跳至主要內容
原型模式

相关信息

设计模式-创建型模式-原型模式


意图

使你能够复制已有对象,而无需使代码依赖它们所属的类

定义

用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象。

结构

原型模式包含如下角色:

  • 抽象原型类:规定了具体原型对象必须实现的的 clone() 方法。
  • 具体原型类:实现抽象原型类的 clone() 方法,它是可被复制的对象。
  • 访问类:使用具体原型类中的 clone() 方法来复制新的对象。

ErenJaegerKing2024年11月15日大约 3 分钟设计模式创建型模式原型模式
建造者模式

相关信息

设计模式-创建型模式-建造者模式


动机

  • 分离了部件的构造(由 Builder 来负责)和装配(由 Director 负责)。 从而可以构造出复杂的对象。这个模式适用于:某个对象的构建过程复杂的情况。
  • 由于实现了构建和装配的解耦。不同的构建器,相同的装配,也可以做出不同的对象;相同的构建器,不同的装配顺序也可以做出不同的对象。也就是实现了构建算法、装配算法的解耦,实现了更好的复用。
  • 建造者模式可以将部件和其组装过程分开,一步一步创建一个复杂的对象。用户只需要指定复杂对象的类型就可以得到该对象,而无须知道其内部的具体构造细节。

ErenJaegerKing2024年11月15日大约 5 分钟设计模式创建型模式建造者模式
工厂方法模式

相关信息

设计模式-创建型模式-工厂方法模式


意图

在父类中提供了一个创建对象的方法,允许子类决定实例化对象的类型

动机

针对简单工厂模式的缺点,使用工厂方法模式就可以完美的解决,完全遵循开闭原则。

定义

工厂方法模式是一种创建型设计模式,  其在父类中提供一个创建对象的方法,  允许子类决定实例化对象的类型。


ErenJaegerKing2024年11月14日大约 4 分钟设计模式创建型模式工厂方法模式
抽象工厂模式

相关信息

设计模式-创建型模式-抽象工厂模式


意图

它能创建一系列相关的对象,而无需指定其具体类

动机

工厂方法模式只考虑生产同等级的产品,但是在现实生活中许多工厂是综合型的工厂,能生产多等级(种类) 的产品,如电器厂既生产电视机又生产洗衣机或空调,大学既有软件专业又有生物专业等。

抽象工厂模式将考虑多等级产品的生产,将同一个具体工厂所生产的位于不同等级的一组产品称为一个产品族。


ErenJaegerKing2024年11月14日大约 4 分钟设计模式创建型模式抽象工厂模式
单例模式

相关信息

设计模式-创建型模式-单例模式


意图

保证一个类只有一个实例,并提供一个访问该实例的全局节点

动机

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。

这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。


ErenJaegerKing2024年11月13日大约 11 分钟设计模式创建型模式单例模式
简单工厂模式

相关信息

设计模式-创建型模式-简单工厂模式


动机

简单工厂不是一种设计模式,反而比较像是一种编程习惯。

结构

  • 抽象产品 :定义了产品的规范,描述了产品的主要特性和功能。
  • 具体产品 :实现或者继承抽象产品的子类
  • 具体工厂 :提供了创建产品的方法,调用者通过该方法来获取产品。

ErenJaegerKing2024年11月13日大约 1 分钟设计模式创建型模式简单工厂模式