设计模式之——面向对象5大基本原则
SOLID
S: ( Single Responsibility Principle) 单一职责原则
每个类只有一个导致类变更的原因。即一个类只完成自己的职责
如不能在类A中创建类B的实例
O: (Open Closed Principle) 开闭原则
对拓展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。
想要达到这样的效果,我们需要使用接口和抽象类
L: ( Liskov Substitution Principle) 里氏替换原则
所有父类出现的地方,子类也可以出现,这是继承被正确使用的规范原则。
如 父类是鸟,有fly()方法,鸵鸟也是鸟,按道理可以继承父类,但是鸵鸟不会飞,不能继承fly()方法 因此其实是不能继承父类的
I: (Interface Segregation Principle) 接口分离原则
接口中不存在子类不需要实现的方法 ,若存在 ,则将不需要实现的方法分离出去
D: (Dependency Inversion Principle) 依赖倒置原则
针对接口编程,依赖于抽象而不依赖于具体。写代码时用到具体类时,不与具体类交互,而与具体类的上层接口交互