1. 开闭原则
  2. 单一职责
  3. 里氏替换原则

1. 单一职责

  1. 降低类的复杂度,一个类只负责一项事务

2. 接口隔离原则

一个类对另一个类的依赖应该建立在最小的接口上

依赖倒转原则

依赖接口,而不是具体的类

依赖传递的方式:

  1. 接口:通过接口的方法参数包含依赖的对象,在接口方法的形参中传入依赖的抽象接口形成依赖传递
  2. 构造方法:类成员变量有接口对应的类,然后通过构造器注入依赖。
  3. setter方法:类成员变量有接口对应的类,然后通过setter方法传入依赖

注意

  1. 底层模块尽量要有抽象类或者接口,或者两者都有。
  2. 变量的声明类型尽量是抽象类或者接口,这样变量引用和实际对象之间就存在一个缓冲层,利于程序扩展和优化
  3. 继承遵循里氏替换原则

里氏替换原则

  1. 子类中尽量不要重写父类的方法
  2. 可以通过聚合、组合、依赖来降低耦合性:将原本的继承关系改为依赖关系

开闭原则

对扩展开放,对修改关闭