设计原则:---灵活 1、开闭原则(目标): 对扩展开发,对修改关闭 允许增加新功能,不修改客户端(使用者)代码。 2、类的单一职责(类的定义): 一个类有且只有一个改变的原因 外界一个需求的变化,内部一个改变的类。 3、依赖倒置(依赖抽象): 客户端(使用者)代码尽量依赖(使用)抽象(爸爸)的组件 抽象的是稳定的,实现是多变的。 4、组合复用原则: 如果仅仅为了代码复用优先选择组合关系,而非继承关系。 组合的耦合度低于继承,灵活度高于继承 5、里氏替换(重写): 父类出现的地方可以被子类替换,在替换后依然保持原有功能。 重写---子类实现了父类中相同(名称,参数)的方法,在调用该方法时,使用子类中的方法 子类在重写父类时,尽量选择扩展重写(先调父类) 6、迪米特法则: 原话:不要和陌生人说话。 类与类交互时,在满足功能的基础上,传递的数据量越少越好 低耦合
封装: 从设计角度讲: (1)分而治之 -- 将一个大的需求分解为许多类,让每个类处理一个独立的功能。 -- 优点:便于分工,便于复用,可扩展性强。 (2)封装