java设计模式---Factory Method Pattern---工厂方法模式
来源:互联网 发布:阿里云 域名注册备案 编辑:程序博客网 时间:2024/05/16 09:38
Factory Method 工厂方法---建立对象实例交给子类
Template Method Pattern是在父类建立处理逻辑的大纲骨架,而在子类补充具体的处理内容。把这个Pattern应用在生产对象实例方面,就是Factory Methond Pattern.
IDCard类和IDCardFactory类则处理实际的内容,属于idcoard包的一部分。
本Pattern用到了Template Method Pattern
用处:框架与内容
如果想利用同一个框架建立不同的产品和工厂,这是完全不用修改Factory和Product,而只要建立**Factory以及**Procut就可以了。
在实际过程中,设计师应把设计模式完整的告诉给后期维护人员,否则经过维护可能与初衷渐行渐远。
Template Method Pattern是在父类建立处理逻辑的大纲骨架,而在子类补充具体的处理内容。把这个Pattern应用在生产对象实例方面,就是Factory Methond Pattern.
程序示例
IDCard类和IDCardFactory类则处理实际的内容,属于idcoard包的一部分。
Main类是测试用类。
//Product类
//product类public abstract class Product{ public abstract void use();}//Factory类
public abstract class Factory{ public final Product create(String string) { Product p = createProduct(owner); registerProduct(p); return p; } protected abstract Product createProduct(String owner); protected abstract void registerProduct(Product product);}//IDCard类
Public class IDCard extends Product{ private String owner; IDCard(String owner) {System.out.println("建立"+owner+"的卡");this.owner = owner; } public void use() { System.out.println("使用"+owner+"的卡"); } public String getOwner() {return owner; }}//IDCardFactory类
public class IDCardFactory extends Factory{ private Vector owners = new Vector(); protected Product createProduct(String owner) {return new IDCard(owner); } protected void registerProduct(Product product) {owners.add(((IDCard)product).getOwner()); } public Vector getOwners() {return owners; }}//Main类
public class Main{ public static void main(String[] args) { Factory factory = new IDCardFactory(); Product card1 = factory.create("changbin"); Product card2 = factory.create("daniel"); card1.use(); card2.use(); }}
本Pattern用到了Template Method Pattern
用处:框架与内容
如果想利用同一个框架建立不同的产品和工厂,这是完全不用修改Factory和Product,而只要建立**Factory以及**Procut就可以了。
在实际过程中,设计师应把设计模式完整的告诉给后期维护人员,否则经过维护可能与初衷渐行渐远。
- java设计模式---Factory Method Pattern---工厂方法模式
- JAVA设计模式之 工厂方法模式【Factory Method Pattern】
- Java设计模式之工厂方法模式【Factory Method Pattern】
- Java设计模式--工厂方法模式【Factory Method Pattern】
- Java设计模式:工厂方法模式(Factory Method Pattern)
- 设计模式2:Factory Method Pattern(工厂方法模式)
- 乐在其中设计模式(C#) - 工厂方法模式(Factory Method Pattern)
- 设计模式——工厂方法模式【Factory Method Pattern】
- 设计模式-工厂方法模式(Factory Method Pattern)
- 设计模式---工厂方法模式(Factory Method Pattern)
- 设计模式之 - 工厂方法模式 (Factory Method design pattern)
- 【设计模式】Factory Method Pattern——工厂方法模式
- 设计模式--工厂方法模式【Factory Method Pattern】
- 设计模式--工厂方法模式(Factory Method Pattern)
- C#设计模式之工厂方法模式(Factory Method Pattern)
- 设计模式(2):工厂方法模式(Factory Method Pattern)
- Factory Method Pattern(工厂方法模式)——《深入浅出设计模式(C#/Java版)》
- 浅谈 java 设计模式--工厂方法模式(Factory Method pattern)
- antlr笔记
- jQuery Tree插件-zTree v3.0 beta发布
- 如何使用 Editbin 调整 SQL Server 线程的堆栈大小(dump)
- android平台上GPS信号的获取和展示(二)之响应与信号解析
- map两种遍历方法
- java设计模式---Factory Method Pattern---工厂方法模式
- 用存储过程查出引起死锁的进程和SQL语句--数据库死锁原因及解决办法
- Arm 嵌入式 开发 要点
- C#计算日期
- 读写ini 和 properties文件
- 《linux与unix shell 编程指南》整理(5)
- 【工作相关】通讯前置系统-通讯方式种类介绍
- 数据库名、实例名、数据库域名、全局数据库名、服务名
- Java类成员变量的初始化顺序