抽象工厂模式
来源:互联网 发布:保时捷车载香水知乎 编辑:程序博客网 时间:2024/05/02 01:47
抽象工厂模式其实是一种最一般的工厂模式形态,简单工厂模式和工厂方法模式都可以看成抽象工厂模式的特殊实现.
抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类
import java.util.*;interface Ifunc1 { public void work1_1(); public void work1_2();}interface Ifunc2 { public void work2_1(); public void work2_2();}class ProductA1 implements Ifunc1 { public void work1_1() { System.out.println("ProductA1 work1_1"); } public void work1_2() { System.out.println("ProductA1 work1_2"); }}class ProductB1 implements Ifunc1 { public void work1_1() { System.out.println("ProductB1 work1_1"); } public void work1_2() { System.out.println("ProductB1 work1_2"); }}class ProductA2 implements Ifunc2 { public void work2_1() { System.out.println("ProductA2 work2_1"); } public void work2_2() { System.out.println("ProductA2 work2_2"); }}class ProductB2 implements Ifunc2 { public void work2_1() { System.out.println("ProductB2 work2_1"); } public void work2_2() { System.out.println("ProductB2 work2_2"); }}interface IFactory { public Ifunc1 createIfunc1(); public Ifunc2 createIfunc2();}class ProductAFactory implements IFactory { public Ifunc1 createIfunc1() { return new ProductA1(); } public Ifunc2 createIfunc2() { return new ProductA2(); }}class ProductBFactory implements IFactory { public Ifunc1 createIfunc1() { return new ProductB1(); } public Ifunc2 createIfunc2() { return new ProductB2(); }}public class AbstractFactoryMethod { public static void main(String[] args) { IFactory factoryA = new ProductAFactory(); factoryA.createIfunc1().work1_1(); factoryA.createIfunc1().work1_2(); }}
0 0
- 工厂模式 -- 抽象工厂
- 工厂模式-抽象工厂
- 工厂模式-抽象工厂
- 工厂模式/抽象工厂模式
- 工厂模式&&抽象工厂模式
- 工厂模式---抽象工厂模式
- 工厂模式&抽象工厂模式
- 工厂模式,抽象工厂模式
- 【模式】抽象工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂&工厂模式&抽象工厂模式
- 工厂方法,抽象工厂模式
- 2,工厂模式--抽象工厂
- C#工厂模式-抽象工厂
- 工厂模式与抽象工厂
- 抽象工厂设计模式
- 抽象工厂模式
- Self-define float4 vector
- 第2章2节《MonkeyRunner源码剖析》了解你的测试对象: NotePad窗口Activity之NotesList简介(原创)
- Android 点击EditText以外区域键盘消失
- 解决iframe跨域问题
- java 反射 根据属性 动态设置值
- 抽象工厂模式
- const 指针与指向const的指针
- c语言3月4日学习总结
- 解决Web应用中的乱码问题
- IBM的面试题
- poj 2311 Cutting Game nim与状态的grundy值
- NSTimeZone
- hdu 5033 单调栈+凸包
- [BZOJ3109][cqoi2013]新数独 && 搜索