关闭

工厂方法——对象创建型模式

标签: 设计模式
130人阅读 评论(0) 收藏 举报
分类:

一、意图
定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。
二、适用性
在下列情况下可以使用Factory Method模式

  • 当一个类不知道它所必须创建对象的时候。
  • 当一个类希望由它的子类来指定它所创建的对象的 。
  • 当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候。

三、结构
这里写图片描述

四、代码
Product

public abstract class Product {
}
public class ConcreteProduct extends Product {
}

Creator

public abstract class Creator {
    public void showName(){
        System.out.println(getProduct().getClass().getSimpleName());
    }

    /**
     * factory method.
     *
     * @return product
     */
    public abstract Product getProduct();
}
public class ConcreteCreator extends Creator {
    @Override
    public Product getProduct() {
        return new ConcreteProduct();
    }
}

Client

public class Client {
    public static void main(String[] args){
        Creator creator = new ConcreteCreator();
        creator.showName();
    }
}

结果:
ConcreteProduct
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:96589次
    • 积分:1951
    • 等级:
    • 排名:千里之外
    • 原创:97篇
    • 转载:1篇
    • 译文:0篇
    • 评论:72条
    博客专栏
    文章分类
    最新评论