一.单一职责原则
一个接口,类和方法应该只有一个职责,只负责一件事情,不允许存在两个或两个以上的变化原因。
二.里氏替换原则
父类出现的地方,子类也可以出现;且在子类重载父类方法时要保证新方法的输入参数不被缩小,输出结果不被放大。
三.依赖倒置原则
模块间的依赖应通过抽象产生,实现类之间不直接产生依赖,且接口或抽象类不依赖实现类,实现类应依赖于接口或抽象类;有三种传递依赖的方法:
1.实现类的构造函数参数中传递依赖。
2.Setter方法传递依赖。
3.接口方法参数传递依赖。
四.接口隔离原则
在满足单一职责原则下,尽量细化拆分接口。
五.迪米特法则(最少知识原则)
一个类调用另一个类时,被调用类应出现在调用类的成员变量或成员方法的参数中;同时被调用类不要对外公开太多public方法和非静态public变量。
六.开闭原则
对修改关闭,对扩展开放;使用继承应对变化。
最后:
以上原则仅是指导原则,实践中不必拘束于某一原则,应根据具体项目需求进行取舍。