一、依赖倒置原则
定义:1、高层模块不应该依赖于低层模块,二者都应该依赖于抽象。
2、抽象不应该依赖于实现细节,实现细节应该依赖于抽象。
二、开发封闭原则
定义:对扩展开放,对修改关闭。
三、单一职责原则
定义:一个类应该仅有一个引起它变化的原因。
四、里氏替换原则
定义:子类必须能够替换它们的父类。
五、接口隔离原则
定义:不应该强迫客户程序依赖它们不用的方法
六、优先使用对象组合,而不是类继承
七、迪米特法则也叫最少知识原则
定义:如果两个类不必彼此直接通信,那么这两个类就不应该发生直接的相互作用,如果一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。