首页 > 作文

Java设计模式七大原则之合成复用原则详解

更新时间:2023-04-04 23:31:47 阅读: 评论:0

目录
定义案例需求方案一方案二方案三对比分析总结设计原则的核心思想

定义

合成复用原则(composite reu principle),即尽量使用组合/聚合的方式,而不是使用继承。

案例

需求

现在假设有一个a类,里面有两个方法,有一个b类,想要复用这两个方法,请问有几种方案

方案一

继承的方式 定义a类,并定义两个方法

/** * 类a * @author:liyajie * @createtime:2022/2/9 9:50 * @version:1.0 */public class a {    public void method1(){        system.out.println("你调用了方法一");    }    public void method2(){        system.out.println("你调用了方法二");    }}

定义b类,并继承a类

/** * 类b * @author:liyajie * @createtime:2022/2/9 9:51 * @version:1.0 */public class b extends a{}

定义测试类

/** * 测试类 * @author:liyajie * @createtime:2022/2/9 9:52 * @version:1.0 */public class test {    public static void洋洋得意的近义词 main(string[] args) {        new b().method1();        new b().method2();    }}

查看结果

方案二

组合或者聚合方式 定义a类,并定义两个方法 和方案一相同,无需修改 定义b2类

/** * 类b2 * @author:liyajie * @createtime:2022/2/9 9:51 * @version:1.0 */public class b2{    a a = new a();    public void method1(){        a.method1();    }    public void method2(){        a.method2();    }}

定义测试类

/** * 测试类 * @author:liyajie * @createtime:2022/2/9 9:52 * @version:1.0 */public class test2 {    public slook的词组tatic void main(string[] args) {        new b().method1();        new b().method2();    }}

查看结果

方案三

依赖方式 定义a类,并定义两个方法 和方案一相同,无需修改

定义b3类

/** * 类b3 * @author:liyajie * @createtime:2022/2/9 9:51 * @version:1.0 */public cla质化研究ss b3 {    public void method1(a a){        a.method1();    }    public沈阳航天航空大学 void method2(a a){        a.method2();    }}

定义测试类

对比分析

方案一,使用继承方式,b类继承了a类之后,就可以使用了a类中的两个方法,这样耦合性较高,不推荐

方案二,该方案即为组合/聚合的方式,在b类里注入a,通过注入的a类来调用方法,耦合性低,易扩展。符合合成复用的原则,推荐

方案三,该方案通过把a类作为参数传递到b类的两个方法中,从而达到调用a类的方法,耦合性低。符合合成复用的原则,推荐

总结

合成复用原则简单理解就一句话,尽量使用聚合和组合的方式,进行解耦,降低耦合性,而不是使用继承。至此java设计模式的七大原则,我们就整理完毕,下面我们来概括归纳一下:

开闭原则:要求对扩展开放,对修改关闭里氏替换原则:不要破坏继承体系依赖倒置原则:要求面向接口编程单一职责原则:实现类职责要单一接口隔离原则:在设计接口的时候要精简单一迪米特法则:只与直接的朋友的通信合成复用原高考总分数是多少2020则:尽量使用聚合和组合的方式,而不是使用继承

设计原则的核心思想

一切为了程序高内聚,低耦合服务

1.找出应用中可能需要变化之处,独立出来,不要和不需要变化的代码混在一起

2.针对接口编程,而不是针对实现编程

3.为了交互对象的松耦合设计而努力

到此这篇关于java设计模式七大原则之合成复用原则详解的文章就介绍到这了,更多相关java合成复用原则内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

本文发布于:2023-04-04 23:31:46,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/86837ff79312e14a070d340057832759.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:Java设计模式七大原则之合成复用原则详解.doc

本文 PDF 下载地址:Java设计模式七大原则之合成复用原则详解.pdf

下一篇:返回列表
标签:原则   定义   方案   方法
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图