Java设计模式期末复习

学习设计模式的作用

设计模式:是前辈对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,,而是一套用来提高代码可复用性,可维护性、可读性、稳健性以及安全性的解决方案。

GOF23:四人帮/四人组出版了23种设计模式。

设计模式:的本质是面向对象设计原则的实际运用,是对类的封装、继承、多态以及类的关联关系和组合关系的充分理解。

优点: 提高程序员的思维能力、编程能力、设计能力。

面向对象的七大原则(OOP)

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

里式替换原则:继承必须确保超类所拥有的闲置在子类中任然成立。不要改变父类原有的代码功能(正方形不是长方形)

依赖倒转原则:要面向接口编程,不要面向实现编程。

单一职责原则:控制类的颗粒大小,将对象解耦、提高其内聚性。

接口隔离原则:要为各个类建立他们所需要的专用接口

迪米特法则:只与你的直接朋友交谈,不跟陌生人说话。

合成复用原则:尽量先使用组合或者聚合等关联  

工厂模式

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

 分类:

        简单工厂模式 :用来生产同一等级结构的任意产品(对于增加新的产品,需要涵盖已有的代码)

        工厂方法模式:用来生产同一等级的固定产品(支持增加任意产品)

        抽象工厂模式:围绕一个超级工厂创建其他工厂,该超级工厂又称为其他工厂的过程

简单工厂模式、工厂方法模式和抽象工厂模式是三种常见的创建型设计模式,它们都用于解决对象创建的问题,但在实现方式和使用场景上有所差异。

  1. 简单工厂模式(Simple Factory Pattern):

    • 简单工厂模式通过一个工厂类,根据客户端的请求返回相应的产品类实例。
    • 客户端只需要知道工厂类和产品类之间的关系,而不关心具体的产品类如何创建。
    • 简单工厂模式违背了开放封闭原则,当需要添加新的产品类时,需要修改工厂类的代码。
  2. 工厂方法模式(Factory Method Pattern):

    • 工厂方法模式将对象的创建延迟到子类中,每个具体的产品类对应一个具体的工厂类,客户端通过调用工厂类来创建对象。
    • 抽象工厂类定义一个创建产品的接口,由子类具体实现。
    • 工厂方法模式通过继承来实现对象创建,符合开放封闭原则,可以方便地添加新的产品类和工厂类。
  3. 抽象工厂模式(Abstract Factory Pattern):

    • 抽象工厂模式提供一个接口,用于创建一系列相关或相互依赖的产品对象。
    • 客户端通过调用抽象工厂接口来创建产品对象,具体实现由具体工厂类完成。
    • 抽象工厂模式用于创建一系列相关的产品对象,适用于产品族的创建。

总结:

  • 简单工厂模式适用于单一产品的创建,通过一个工厂类来创建不同的产品对象。
  • 工厂方法模式适用于多种产品的创建,每个产品对应一个具体的工厂类,通过继承来实现对象的创建。
  • 抽象工厂模式适用于一系列相关或相互依赖的产品对象的创建,由抽象工厂接口定义创建方法,具体实现由具体工厂类完成。

工厂模式核心本质:

         实例化对象不需要new 用工厂方法代替

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

       

你可能感兴趣的:(java,设计模式,开发语言)