【设计模式】创建型

创建型设计模式是对类的实例化过程进行抽象。

简单工厂模式

根据传入参数返回不同对象

缺点:当对象具体类型增加时,需要修改工厂代码,添加新的具体类型判断和生成逻辑,违反了开闭原则

工厂方法模式

不仅将具体对象抽象,同时将工厂也抽象,解决新增加具体类型时需要修改工厂代码的问题,但是需要新建工厂

缺点:维护具体类型对象的同时需要维护工厂类型,增加了系统的复杂度

抽象工厂模式

将工厂进一步抽象,不仅用于生产同一种产品,改为生产同一族产品,例如:Benz抽象工厂具体实现,生产轮子,也生产车架,生产发动机。将同一族对象的生产抽象到一个工厂

缺点:扩展不方便,新增工厂时可能添加新的生产方法从而需要修改抽象工厂

单例模式

一个类一个实例

生成器模式

将复杂的创建流程分割,例如创建某个对象需要十几个参数,但实际常用的只有几个。将产品本身与产品的创建过程解耦,可参考 @Builder

原型模式

 用于复制已有对象。通过被复制类实现copy接口的copy方法,以便能获取private等成员变量值。即:复制方法由被复制类提供

posted @ 2023-01-20 15:06  马儿跑  阅读(18)  评论(0编辑  收藏  举报