设计模式

1、分类

  1. 创建型模式

    • 单例模式
    • 工厂模式
    • 抽象工厂模式
    • 建造者模式
    • 原型模式
  2. 结构型模式

    • 适配器模式
    • 桥接模式
    • 装饰模式
    • 组合模式
    • 外观模式
    • 享元模式
    • 代理模式
  3. 行为型模式

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

2、oop七大原则

  • 开闭原则:对扩展开放,对修改关闭
  • 里氏替换原则:继承必须确保超类所拥有的性质在子类中仍然成立(正方形不是长方形)
  • 依赖倒置原则:要面向接口编程,不要面向实现编程
  • 单一职责原则:控制类的粒度原则,将对象解耦、提高内聚性
  • 接口隔离原则:要为各个类建立他们所需的专用接口
  • 迪米特法则:只与你的直接朋友交谈,不跟陌生人说话
  • 合成复用原则:尽量先使用组合或者聚合等关联关系来实现,其次来考虑使用继承关系来实现

1、单例模式

构造器私有化

  1. public 类名 {
  2. }
  3. private 类名 ) {
  4. }

2、工厂模式(factory)

作用:实现了创建者和调用者的分离

  • 简单工厂模式(静态工厂模式)
  • 工厂方法模式
  • 抽象工厂模式

开闭原则:对扩展开放,对修改关闭

依赖倒转:要针对接口编程

迪米特法则

核心本质:

实例化对象不使用new,用工厂方法代替

将选择实现类,创建对象统一管理和控制。从而将调用者跟我们的实现类解耦