工厂模式
工厂模式负责将大量有共同接口的类实例化。工厂模式可以决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。
工厂模式的几种形态:
简单工厂模式。又称静态工厂模式。
工厂方法模式。Factory Method,又称多态工厂或虚拟构造子模式(Virtual ConstrUCtor)。
抽象工厂模式。Abstract Factory,又称工具箱(Kit或ToolKit)模式。
抽象产品
简单工厂模式设计到的角色:
1. 工厂类(creator)角色:这个角色是工厂模式的核心,它含有于应用紧密相关的商业逻辑。工厂类在客户端的调用下创建产品对象,它往往又一个具体的Java类实现。
2. 抽象产品(Abstract Product)角色:它为具体产品提供了一个共同的接口(类型)。是工厂方法的返回类型。
3. 具体产品(Concrete Product)角色:工厂方法所创建的对象都是它的实例。
简单工厂模式的特征:静态方法返回对象实例。
抽象产品
具体产品
简单工厂模式的其它类图:
l 这一种比较极端:!java类库中也有
l 大量实例.退化的简单工厂模式。
l 第二种:工厂角色和抽象产品合并。
单态模式和多态模式的构造函数都是私有的---对外不提供直接实例化的功能,它们都有自己的静态的工厂方法,提供自身的实例。
当单态模式和多态模式使用一个集合来存储自己创建的对象,以便通过查询这个集合来得到创建的对象时,就成了备忘录模式的应用。
工厂模式
最新推荐文章于 2024-04-13 16:38:06 发布