一、单一职责原则(single responsibility principle)简称SRP原则
一个接口或者类只有一个原因引起变化,即一个接口或者类只有一个职责,负责一件事情。(此原则同样适用于方法)
好处:
1、复杂性降低;2、可读性提高;3、可维护性提高;4、变更风险降低

二、里氏替换原则:父类能出现的地方子类就可以出现
定义解释:
1、子类必须完全实现父类的方法;
2、子类可以有自己的个性;
3、覆盖或者实现父类的方法时,输入参数可以被放大;
public class Father {undefined
    public Collection doSomething(HashMap map) {undefined
        System.out.println("父类被执行了");
        return map.values();
    }
}

public class Son extends Father {undefined
    public Collection  doSomething(Map  map) {undefined
        System.out.println("子类被执行了");
        return map.values();
    }    
}
public static void main(String[] args) {undefined
    Father father = new Father();
    Son son = new Son();
    HashMap<Object,Object> map = new HashMap<>();
    
    father.doSomething(map);
    son.doSomething(map);
}
以上代码执行时,子类重载了父类的doSomething方法,并且放大输入参数Hashmap→Map,执行以后,出现相同的结果,
均输出"父类被执行了",并没有歪曲父类的意图,不会引起业务逻辑混乱,符合里氏替换原则。
4、覆写或者实现父类的方法时,输出结果可以被缩小;

三、依赖倒置原则:
1、高层不应该依赖底层,两者都应该依赖其抽象;
2、抽象不应该依赖细节,细节应该依赖抽象;
即模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或者抽象类产生的。
更加简单的定义就是"面向接口编程(OOD:Object-Oriented Design)"

四、接口隔离原则
定义解释:
1、接口要尽量小
2、接口要高内聚,高内聚就是尽量减少公布public方法
3、接口要为个体提供定制服务,即只提供访问者需要的方法
4、接口设计是有限度的
通俗的讲,接口尽量细化,同时接口中的方法尽量少。
说明:单一职责原则侧重于业务逻辑,即职责尽量少;而接口隔离原则侧重于接口中的方法尽量少。

五、迪米特法则
也称为最少知识原则:一个对象应该对其他对象有最少的了解。通俗的讲:一个类应该对自己需要耦合或者调用的类知道的越少越好

六、开闭原则
软件实体应该对扩展开放,对修改关闭。就是说应该通过扩展来实现变化,而不是通过修改已有的代码来实现变化。

java程序设计六大原则相关推荐

  1. Java 设计模式六大原则

    Java 设计模式六大原则 单一职责原则 定义:不要存在多于一个导致类变更的原因.通俗的说,即一个类只负责一项职责. 问题由来:类T负责两个不同的职责:职责P1,职责P2.当由于职责P1需求发生改变而 ...

  2. java设计模式六大原则之场景应用分析

    面对项目中如此众多的设计模式,我们有时候无法 下手.在强大的设计框架也终脱离不了23种设计模式,6大原则.我们只要把内功修炼好,掌握其精髓也离我们不远了... 目录: 设计模式六大原则(1):单一职责 ...

  3. 面向对象程序设计六大原则

    面向对象程序设计中,需要遵守的原则可总结为6个,这就是大名鼎鼎的六大原则.面向对象程序设计原则也是我们用于评价一个设计模式的重要指标之一.在设计模式中,很多设计模式都遵守了这些原则. 单一职责原则(S ...

  4. 程序设计六大原则-概况与举例

    总结设计原则其实很早以前就在想了,但是起初我认为固定的原则会局限人的创新思维,陈旧的定律不一定是最好的.实际上随着代码量的沉积,你会发现无形之中你的程序设计会和这六大原则不谋而合.大道至简,前人走过的 ...

  5. java代码优化六大原则

    单一职责 代码优化第一步,单一职责原则 (Single Responsibility Principle).对于一个java类,应该仅有一个引起它变化的原因,也就是说,一个类中,应该是一组相关性很高的 ...

  6. java 设计原则_【无尽的编程之路】(java)-设计模式六大原则

    本文主内容主要是列出各项原则的定义与本人对六大原则的感悟.写出来的目是想与大家分享与讨论.正如有句话叫做一千个读者眼中有一千个哈姆雷特,如果大家对这六项原则的理解跟我有所不同,欢迎留言,大家共同探讨. ...

  7. Java基础学习总结(84)——Java面向对象六大原则和设计模式

    面向对象六大原则 在此之前,有一点需要大家知道,熟悉这些原则并不是说你写出的程序就一定灵活.清晰,只是为你优秀的代码之路铺上了一层栅栏,在这些原则的指导下,你才能避免陷入一些常见的代码泥沼,从而让你写 ...

  8. Java设计六大原则

    1.遵循单一职责原则 一个类只专注于做一件事: 高内聚,低耦合: 2.开放-封闭原则 对拓展开放,对修改关闭(尽可能不动原有代码进行拓展): 高内聚,低耦合: 为达到目的,需对系统进行抽象化设计(关键 ...

  9. JAVA设计模式六大原则:(5)迪米特法则

    1 定义 迪米特法则定义:一个对象应该对其他对象保持最少的了解. 2 描述 问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大. 解决方案:尽量降低类与类之间的耦 ...

  10. 设计模式六大原则总结------备忘

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可.http://www.zuox ...

最新文章

  1. java测试时间的类,java 测试五种单例模式需要的时间
  2. 【react】使用代理解决跨域问题
  3. 18个堪称神器的命令行工具,高效运维必备
  4. it's so cold
  5. ArrayList,Vector,LinkedList
  6. 特斯拉完全自动驾驶可能再次涨价 涨至1.4万美元
  7. 程序员怒斥:阿里如此嚣张?为所欲为?谁让你动了我的浏览器
  8. 2021年中国电动卡车马达市场趋势报告、技术动态创新及2027年市场预测
  9. 架构之美第三章-美丽架构之道
  10. 惠普z800工作站bios设置_惠普台式机装win10系统及bios设置(uefi+gpt)
  11. 高一 Unit2 动名词
  12. 千万不要给女朋友解释 什么是 “羊群效应”
  13. android 设置软键盘高度,Android 软键盘一招搞定(实践篇)
  14. 三相PFC程序30KW充电桩 30KW三相PFC程序
  15. 计算机硬件相关研究内容,计算机硬件论文提纲格式范本 计算机硬件论文提纲怎样写...
  16. WPS---EXCEL(十一)---将插入数据转化成柱状图
  17. mp4文件播放不了怎么办?
  18. 计算机主机如何睡眠,电脑如何设置睡眠
  19. 关于ETD.sys的系统蓝屏问题的解决
  20. Python 线程之退出线程

热门文章

  1. c++调用Python [boost::python]
  2. mysql的安全性实验报告_数据库安全性与完整性实验报告
  3. 三人表决器逻辑表达式与非_正则表达式 - 驰念
  4. Win11无线网络适配器有感叹号不能上网怎么解决
  5. cortex系列处理器排行_谁有ARM Cortex-A系列(A53、A57、A73等)处理器性能分类与对比??...
  6. MySQL — 数据库的基本概念、安装并配置MySQL、MySQL的基本使用、在项目中操作MySQL、前后端的身份认证
  7. 爬虫登陆实战 --- QQ音乐扫码登陆
  8. 服务器集群速度文件传输,为什么要实现服务器集群
  9. 计算机怎么看事件管理,win7系统事件查看器怎么打开
  10. mac os x 使用教程_如何在Mac OS X计算机上使用扫描仪