继承复用和组合/聚合复用-Java全部课件.
继承复用和组合/聚合复用写程序TestCARP.java来演示分析继承复用如果想要一个类也具有另一个类的方法功能时,早期一般情况会采用将这个类去继承另一个类,这就是继承复用有设计问题继承一定是从一般到特殊的关系,父子类之间一定要是is-a的关系。而程序中的两个类不是/不一定是is-a的关系,不能直接设计为继承关系如果被继承的另一个类中有protected属性,那么在子类中就可以随意访问和修改,数据不安全,继承复用破坏了封装对于被继承的另一个类中有些方法,子类不想要,但因继承却不得不要,破坏了子类的设计要求修改程序TestCARP.java的代码将其变为组合/聚合复用不使用extends,而是在一个类中维护另一个类的对象作为属性,然后在自己的方法中不写自己实现,而去调用属性指示的另一个类的对象方法来实现自己的方法。组合/聚合复用的好处不破坏封装不需要继承不想要的方法可以复用别的类的方法来实现自己的方法复用代码一定尽可能使用组合/聚合复用,在工程上几乎不采用继承复用,会给设计带来重大问题。继承复用也称白盒复用要破坏封装组合/聚合复用也称黑盒复用,不破坏封装
2.75MB
文件大小:
评论区