简述面向对象的设计原则?
(1)单一职责原则
一个类只具有一项职责。好维护。
(2)里氏替换原则
父类出现的地方必然能用子类替换,并且替换后行为不会发生替换。反之不行。
(3)依赖倒置原则
程序应该依赖于抽象的接口,而不是依赖于具体的类。因为类可能随时发生变化,而接口发生变化的可能性较小。
(4)开放封闭原则
程序对扩展开放,对修改封闭。保证程序稳定性并降低维护成本。
(5)接口隔离原则
尽可能使用多个功能单一的小接口,而不是功能复杂的大接口。
(6)最少知道原则
降低类之间的耦合度。