开闭原则:对修改封闭,对拓展开放。
单一职责原则:类的功能要专一。
里氏代换原则:子类继承父类的时候,除添加新的方法完成新增功能外,尽量不要重写父类方法。
依赖倒转原则:类要依赖接口,而不要依赖具体的类。
接口隔离原则:接口的功能也要单一,避免接口功能太多。
合成复用原则:尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。
迪米特原则:最小知道
- 如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中的一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。
- 朋友圈的确定"朋友"条件: 出现在成员变量、方法的输入输出参数中的类称为成员朋友类。