SOLID = SRP + OCP + LSP + ISP + DIP

解释
SRP 单一责任原则 一个类或者一个方法只做一件事
OCP 开放封闭原则 类独立之后就不应该去修改它,而是以扩展的方式适应新需求
LSP 里氏替换原则 所有基类出现的地方都可以用派生类替换
ISP 接口隔离原则 类不应该依赖不需要的接口
DIP 依赖倒置原则 程序要依赖于抽象接口,不要依赖于具体实现