跳转至

基础知识

3 个基本特征

封装

封装是面向对象的基础,它让我们能够把现实环境的复杂内容进行归类,让编程无论在理解度上还是在语法上进行更好的表达。

继承

继承表达的是“重复”,是复用性的体现,能够让我们通过找到类型的共性进行更进一步的提取和划分。

多态

“多态”则是多样性、可扩展性的体现。面对丰富的和可能不断变化的问题域,让我们的程序能够有更大的容纳性去模拟和适应这些变化。它表达的是“变化”。

7 个设计原则

单一职责原则 (Single Responsibility Principle)

即职责划分要清晰,不同职责的不要搅和在一起。每个类应该只有一个让他发生改变的原因(隔离)

开放关闭原则 (Open-Closed Principle)

对扩展开发,对修改封闭。即如果系统要变化,就去扩展、新增新类,不要修改现有的类( 依赖于抽象,隔离具体)

里氏替换原则 (Liskov Substitution Principle)

子类应该能充分覆盖父类,并且让使用者分不出差别(抽象)

接口隔离原则 (Dependence Inversion Principle)

每个接口只管一个功能,不要出现“胖接口”。增加功能时,要加接口,而不是改接口(隔离)

依赖倒置原则 (Interface Segregation Principle)

具体应该依赖于抽象,而不是抽象一来于具体,即低层要依赖于高层(依赖于抽象)

迪米特法则(Law Of Demeter)

迪米特法则又称为:最少知道原则,它表示一个对象应该对其它对象保持最少的了解。通俗来说就是,只与直接的朋友通信。

组合/聚合复用原则 (Composite/Aggregate Reuse Principle)

组合/聚合复用原则就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分; 新的对象通过向这些对象的委派达到复用已有功能的目的。

在面向对象的设计中,如果直接继承基类,会破坏封装,因为继承将基类的实现细节暴露给子类;如果基类的实现发生了改变,则子类的实现也不得不改变;从基类继承而来的实现是静态的,不可能在运行时发生改变,没有足够的灵活性。于是就提出了组合/聚合复用原则,也就是在实际开发设计中,尽量使用组合/聚合,不要使用类继承。

23 种设计模式

创建型

  • 工厂模式
  • 抽象工厂模式
  • 单例模式
  • 原型模式
  • 创建者模式

结构型

  • 组合模式
  • 装饰者模式
  • 外观模式
  • 适配器模式
  • 代理模式
  • 享元模式
  • 桥接模式

行为型

  • 观察者模式
  • 策略模式
  • 状态模式
  • 中介模式
  • 模板方法
  • 命令模式
  • 备忘录模式
  • 访问者模式
  • 解释器模式
  • 迭代器模式
  • 职责链模式

最后更新: 2022-05-06
回到页面顶部