美文网首页
1.1 creational 创建型 - simple Fact

1.1 creational 创建型 - simple Fact

作者: entro | 来源:发表于2019-02-02 20:31 被阅读0次

Simple Factory 简单工厂

[TOC]

创建型设计模式,又名 Static Factory 静态工厂

简介

  • 其参数不同返回不同的实例。
  • 简单工厂模式专门定义一个类(工厂类)来负责创建其他类的实例。
  • 被创建的实例通常都具有共同的父类。

三种角色:Factory、Product、Concrete Product

角色 个数
Factory:工厂角色 一个
Product:抽象产品角色 一个
Concrete Product:具体产品角色 多个

类图

SimpleFactory.png

优点:降低耦合,使用方便

+ 将对象的创建和对象本身业务分离,降低耦合。
+ 工厂方法是静态方法,使用起来可通过类名直接调用,只需要传入一个简单的参数。

缺点:职责过重,违反开闭原则

+ Factory 工厂类的职责相对过重。
+ 违背开闭原则:增加新的Product需要修改工厂类。

应用:Java日期格式类、Java加密类、大话设计模式中计算器的例子

  • Java日期格式工具类 java.text.DateFormat
public final static DateFormat getDateInstance();
public final static DateFormat getDateInstance(int style);
public final static DateFormat getDateInstance(int style,Locale locale);
  • Java加密类
KeyGenerator keyGen=KeyGenerator.getInstance("DESede");
  • 《大话设计模》式中的举例:计算器+,- * /运算类
    • Factory 是根据参数生产运算类的工厂
    • Product 是运算类
    • Concrete Product 是 + - * / 具体处理类
  • 自己项目举例:
    //todo

相关文章

网友评论

      本文标题:1.1 creational 创建型 - simple Fact

      本文链接:https://www.haomeiwen.com/subject/dphesqtx.html