学习设计模式(7)——6大原则
来源:互联网 发布:淘宝网页商品拍照制作 编辑:程序博客网 时间:2024/05/21 08:03
1.开闭原则
对修改关闭,对扩展开放。即尽量不允许修改,但鼓励扩展。
理解 : 一个虚基类,然后有多个子类,允许继续扩展新的子类,但是已有的子类不建议修改。
2.里氏替换原则
父类必须可以被子类替换,否则就不应该设计为其子类。
理解 : 在子类继承父类之后,子类应当只实现虚函数的部分,不应当实现不是虚函数的函数。不要重写父类的方法,也不要重载父类的方法。
3.依赖倒转原则
要依赖于抽象,不要太依赖于实现。
理解 : 要依赖基类(或者说接口类),不要依赖具体的实现类。
4.接口隔离原则
客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
理解 : 接口的功能要简单化,不要搞出一个特别复杂的基类,要合理细分一个基类的功能。
5.合成/聚合复用原则
优先考虑组合,而不是继承。
6.迪米特法则
如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。
==============
0 0
- 学习设计模式(7)——6大原则
- 设计模式——6大原则
- 【设计模式】——6大原则
- 学习设计模式之禅——6大设计原则
- 学习设计模式之禅——6大设计原则
- 《设计模式之禅》——6大设计原则
- 设计模式——6大设计原则笔记
- 设计模式——6大设计原则
- Java设计模式总结——6大设计原则
- 设计模式(三)6大原则
- 设计模式7大原则(一)
- 设计模式7大原则(二)
- 设计模式7大原则(三)
- 设计模式学习笔记--6大设计原则
- 设计模式6大原则
- 6大设计模式原则
- 设计模式6大原则
- 设计模式6大原则
- 使用面向对象重构之-继承中的抽象—模板方法
- 11 Linux mv
- 二叉树的遍历
- java学习日志(一)-- String、Integer、int之间的类型转换
- 99乘法表
- 学习设计模式(7)——6大原则
- Ansible之 Inventory 资源清单介绍
- 算法提高 学霸的迷宫
- 设计模式之--代理模式
- 面试题 第三弹
- 碉堡了!程序员用深度学习写了个老板探测器(附源码)
- 【bzoj 1000】A+B
- 做业务,建团队,推文化
- 如何在jsp中写一个java方法