面向对象设计的六大基本原则

Posted C3Stones

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象设计的六大基本原则相关的知识,希望对你有一定的参考价值。

一、单一职责原则SRP Single Responsibility Principle)

  不要存在多于一个导致类变更的原因。通俗来说,即一个类只负责一项职责。

二、里氏替换原则LSP Liskov Substitution Principle)

  1. 如果对每一个类型为T1的 对象o1,都有类型为T2的对象o2,使得以T1定义的所有程序P在所有的对象o1都替换成o2时,程序P的行为没有发生变化,那么类型T2是类型T1的子类型。

  2. 所有引用基类的地方必须能透明地使用其子类对象。

三、依赖倒置原则DIP Dependence Inversion Principle)

  高层模块不应该依赖底层模块,二者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽象;

  要针对接口编程,不要针对实现编程。

四、 接口隔离原则ISP Interface Segregation Principle)

  客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。

五、迪米特法则LOD Law of Demeter)

  一个对象应该对其他对象保持最少的了解。

  只与你直接的朋友通信,而避免和陌生人通信。

六、开闭原则OCP Open-Close Principle)

  一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。

以上是关于面向对象设计的六大基本原则的主要内容,如果未能解决你的问题,请参考以下文章

面向对象设计的六大设计原则 (最通俗易懂的版本!!)

Java面向对象设计的六大原则

面向对象六大基本原则的理解

OOP面向对象编程的六大原则(上)

面向对象设计的六大基本原则

《Android源码设计模式》----面向对象六大原则