设计模式(一)创建型

107 阅读1分钟

仅供学习若有错误请斧正

设计模式大体上有三类:创建型,行为型,结构型

创建型设计模式

解决的是:创建对象的问题

特点:将对象的创建与使用分离

单例模式

某个类只能生成一个实例,提供一种对外的接口供调用者获取这个实例

可拓展为:有限多个实例

饿汉式

线程安全,类初始化时就把对象创建好了

懒汉式

线程不安全,需要使用synchronize关键字同步方法块,成本高昂

双重校验机制

使用volatile关键字并在方法中一次判断为null后再使synchronize关键字同步该类

简单工厂模式(不算23种设计模式之一)

具体工厂对象决定创建的是哪种产品实例

工厂方法模式

抽象工厂对象的子类(具体工厂)去生产商品,抽象工厂决定调用哪个子类(具体工厂)去生产商品

抽象工厂模式

把相似或相关联产品抽象为对象簇,根据要创建产品的对象簇类型决定调用哪个子类工厂,更加解耦

从左到右依次是,简单工厂模式,工厂方法模式,抽象工厂模式 image.png

原型模式

有大量的相同或相似对象需要创建

可以使用Object.clone()方法克隆