组合与继承

来源:互联网 发布:淘宝购物运费险怎么用 编辑:程序博客网 时间:2024/06/06 02:37

        组合关系(关联和聚集关系)和继承关系相比,前者最大的优势是不会破坏封装,在软件开发阶段组合关系虽然不会比继承关系减少编码量但到了软件维护阶段组合关系具有较好的松耦合性,因此系统更加容易维护。在软件扩展时组合关系使系统具有更好的可扩展性而继承会使结构变得复杂,在运行时组合关系允许动态变化使得整体类可以灵活的改变实现方式而继承不允许子类改变他的父类,整体类还能灵活的对局部类进行封装,改变局部类的接口而继承只能继承父类不可以取消父类的方法。 前者最大的劣势是比继承关系要创建更多的对象,在创建整体类(相当于继承的子类)时必须创建其所有的局部类(相当于继承的父类)的实例,另外整体类不会自动获得局部类的接口需要单独定义。

1 0
原创粉丝点击