1、单一职则原则:一个类只有一个引起它变化的原因。说白了就是,一个类只有单一的一个功能,不同的类具备不同的职责,各施其责。如果一个类有多种职责,就应该分成多个类。
2、开放封闭原则:对扩展开放,对修改关闭。如果需要增加功能,那么就扩展新类,而不是修改原来的类,所以在类设计时就要保证可以通过扩展的方式来添加新功能。
3、里氏替换原则:在代码中可以将父类全部替换为子类,但程序不会报错。也就是父类的方法,在子类中全都有。反过来不一定行。
4、接口隔离原则:一个类与另一个类之间的依赖性,应该依赖于尽可能小的接口。
5、依赖倒转原则:抽象不应该依赖细节,细节应该依赖于抽象。就是说要针对接口编程,不要针对实现编程。就好比手机充电器,因为充电接口是一个标准,所以自己的充电器没带时借用别人的充电器也一样能充电。
6、迪米特法则,也叫最少知识原则:如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。根本思想就是强调类与类之间松耦合。类之间的耦合越弱,越有利于复用。