1.单一职责原则(对象职责明确原则)
要求:一个对象只做好一件事情,必须专注,职责过多容易引起变化的原因就多,程序就不稳定。(高内聚,低耦合的延伸)
2.开放封闭原则(核心原则)
要求:需求变化时尽量少的修改类的设计,而是通过扩展类来完成。即封闭修改,开放扩展
3.依赖倒置原则(面向对象的精髓)
要求:基于接口编程,高层模块调用接口,底层模块实现接口,防止底层变化直接影响高层。
4.接口隔离原则
要求:尽可能多的使用专用的小接口,而不是总接口,避免接口过于复杂。
5.里氏替换原则
要求:在继承关系中,子类可以替换父类,虚拟机可以根据父类变量动态的找到具体的子类对象,从而实现多态。