帮我讲讲组成优于继承 高内聚低耦合 要例子 需要哪个兄弟帮我详细讲解一下 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 组合要比继承灵活,所以先用组合! 例如有一个A类一个B类!在B类里面你new了一个A类,并且A类对你的B类非常重要也可以说是不可缺少的这个就是组合。如果继承就简单了吧 B extends A。高聚合就是说一个类要包含多个功能底耦合就是说这个类最好少依赖其他的类,最完美就是完全独立。就这么简单 类继承允许你根据其他类的实现来定义一个类的实现。这种通过生成子类的复用通常被称为白箱复用(white-box reuse)。术语"白箱"是相对可视性而言:在继承方式中,父类的内部细节对子类可见。实际上,这是一种较高的耦合度。 对象组合是类继承之外的另一种复用选择。新的更复杂的功能可以通过组合对象来获得。对象组合要求对象具有良好定义的接口。这种复用风格被称为黑箱复用(black-box reuse),因为被组合的对象的内部细节是不可见的。对象只以"黑箱"的形式出现。 继承和组合各有优缺点。类继承是在编译时静态定义的,且可直接使用,类继承可以较方便地改变父类的实现。但是类继承也有一些不足之处。首先,因为继承在编译时刻就定义了,所以无法在运行时刻改变从父类继承的实现。更糟的是,父类通常至少定义了子类的部分行为,父类的任何改变都可能影响子类的行为。如果继承下来的实现不适合解决新的问题,则父类必须重写或被其他更适合的类替换。这种依赖关系限制了灵活性并最终限制了复用性。 对象组合是通过获得对其他对象的引用而在运行时刻动态定义的。由于组合要求对象具有良好定义的接口,而且,对象只能通过接口访问,所以我们并不破坏封装性;只要类型一致,运行时刻还可以用一个对象来替代另一个对象;更进一步,因为对象的实现是基于接口写的,所以实现上存在较少的依赖关系。 优先使用对象组合有助于保持每个类被封装,并且只集中完成单个任务。这样类和类继承层次会保持较小规模,并且不太可能增长为不可控制的庞然大物(这正是滥用继承的后果)。另一方面,基于对象组合的设计会有更多的对象(但只有较少的类),且系统的行为将依赖于对象间的关系而不是被定义在某个类中。 为什么类成员方法只能访问类成员变量,而不能访问实例成员变量? java图像到视频 大专程序员交流群 为什么我用Date得不到正确结果呢? 请教一下java applet和CGI交互的问题???????????? java问题:如何用JDO直接连接ACCESS? 新手(蠢问题)javadoc 建档文件作何用? 一个牛人问的问题 汉子返回(JTextPane)?大小,颜色设置?在线解决给分。 那句话是什么来着? ListIterator为何非要java.util.Listerator? 请教高手,J2SE包引入的问题训。
在B类里面你new了一个A类,并且A类对你的B类非常重要也可以说是不可缺少的这个就是组合。
如果继承就简单了吧 B extends A。高聚合就是说一个类要包含多个功能
底耦合就是说这个类最好少依赖其他的类,最完美就是完全独立。就这么简单