声明:鄙人一直学习和使用的都是c语言,所以对面向对象的理解非常浅薄,该文内容都是个人理解和观点,如有错误,欢迎大家指正
六大设计原则
里氏原则
覆盖是个垃圾特性,请尽量避免利用
子类对父类进行扩展的时候,尽量不要修改父类原有的特性
依赖倒置原则
把面向对象编程理解成面向接口编程,或者说是面向抽象类编程
当使用一个具体类的时候,就要考虑是否会对该类进行扩展,显然用抽象类和接口更易于扩展
接口隔离原则
使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口
单一全责原则
接口和类应该只负责单一职责,如果有多个职责就要进行拆分,尼古拉斯赵四说过:一次不行就两次
迪米特法原则
一个对象要保持对另一个对象最少的了解
这两种的区别是什么呢?
开闭原则
对扩展开放;对修改闭合