# java 23 种种设计模式可分为三大类

401339-20170928225241215-295252070

  1. 创建型模式(5 种):

    工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

  2. 结构性模式(7 种):

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

  3. 行为模式(11 种):

    访问者模式、模板模式、策略模式、状态模式、观察者模式、备忘录模式、中介者模式、迭代器模式、解释器模式、命令模式、责任链模式。

# 设计模式的七种设计原则

  1. 单一职责原则

    一个类应该只负责一个职责;否则,类应该被拆分。

  2. 开闭原则
    程序需要进行拓展的时候,不能通过修改已有的代码实现变化,而应该通过扩展软件实体的方式实现,如根据需求重新派生一个实现类。

  3. 里氏替换原则
    所有使用基类代码的地方,如果换成子类对象还能够正常运行,则满足这个原则。

  4. 依赖倒置原则
    依赖于约定而不依赖于具体实现,即面向接口编程。

  5. 接口隔离原则
    要求尽量将庞大臃肿的接口拆分成更小、更具体的接口,让接口中只包含客户感兴趣的的方法。

  6. 迪米特原则
    被依赖的类应尽量将复杂逻辑封装在类的内部,不对外泄漏任何中间信息。

  7. 合成复用原则
    尽量使用组合 / 聚合的方式,而不是继承关系达到软件复用的目的。

更新于 阅读次数