OOP七大原则
- 开闭原则
对拓展开发,对修改关闭
即不改变原来的程序,而是在其基础上拓展
- 里氏替换原则
继承必须保证超类所拥有的性质在子类中依然成立
可以写子类来添加新功能,但是尽量不要改变父类原有的功能,如果修改了父类,那整个继承体系的复用就会越来越差
- 依赖倒置原则
要面向接口编程,不要面向实现编程
降低程序之间的耦合性,抽象不依赖细节,细节依赖抽象
- 单一职责原则
控制类的粒度大小,将对象解耦,提高其内聚性
尽量保证,一个方法只做一件事情
- 接口隔离原则
要为各个类建立它们需要的专用接口
也提高内聚性
- 迪米特法则
“只与你的直接朋友交谈,不跟朋友的朋友交流”
降低耦合性,提高独立性
弊端:产生许多中介类,增加系统复杂性
- 合成复用原则
尽量使用组合或者聚合等关联关系来实现代码,其次才考虑继承
组合:头部和人
继承:狗和动物
参考:
https://www.bilibili.com/video/BV1mc411h719?p=2&spm_id_from=pageDriver