本文知识大部分来自于哔哩哔哩尚硅谷视频
1、重用性
2、可读性
3、可扩展性
4、可靠性
5、高内聚,低耦合
一、单一职责原则
对类来说:一个类应该只负责臆想职责
对方法来说:一个方法只负责做一件事
- 降低类的复杂度
- 提高可读性、可维护性
- 降低变更风险
二、接口隔离原则
类实现的接口为最小接口
即:当一个类的实现接口时,接口中有4个抽象方法,只用到的接口中的2个抽象方法,可以考虑把接口拆分成两个接口。
三、依赖倒转原则(依赖倒置)
面向接口编程
即:java中尽量使用抽象类或者接口抽象高程模块
1、接口传递
public interface OpenClose {
void open(TV tv);
}
public interface TV {
void play();
}
class C implements{
void open(TV tv){
tv.play();
}
}
2、构造方法传递
3、setter传递
四、里氏替换原则
尽量不要重写父类方法
五、开闭原则
对扩展开放,对修改关闭
即:通过扩展增加功能,而不是修改源代码
六、迪米特法则
对象间保持少了解,不与陌生类通信,只与朋友类通信
朋友类:组合、关联、聚合等
陌生类:局部变量中的类
七、合成复用原则
尽量使用合成/聚合的方式,而不是使用继承
聚合:成员变量中有一个类型为对象的变量,使用setter或者构造方法使其实例化。
组合:成员变量中有一个类型为对象的变量,直接这个对象变量实例化。
依赖:作为参数传入