Java Design Pattern: Abstract Factory
来源:互联网 发布:js字符串和数组的方法 编辑:程序博客网 时间:2024/05/19 02:30
Abstract Factory pattern adds another layer of abstraction for Factory pattern. If we compare Abstract Factory with Factory, it is pretty obvious that a new layer of abstraction is added. Abstract Factory is a super-factory which creates other factories. We can call it “Factory of factories”.
Abstract Factory class diagram
Abstract Factory Java code
interface CPU { void process();} interface CPUFactory {CPU produceCPU();} class AMDFactory implements CPUFactory { public CPU produceCPU() { return new AMDCPU(); }} class IntelFactory implements CPUFactory { public CPU produceCPU() { return new IntelCPU(); }} class AMDCPU implements CPU { public void process() { System.out.println("AMD is processing..."); }} class IntelCPU implements CPU { public void process() { System.out.println("Intel is processing..."); }} class Computer {CPU cpu; public Computer(CPUFactory factory) { cpu = factory.produceCPU(); cpu.process(); }} public class Client { public static void main(String[] args) { new Computer(createSpecificFactory()); } public static CPUFactory createSpecificFactory() { int sys = 0; // based on specific requirement if (sys == 0) return new AMDFactory(); else return new IntelFactory(); }}
Real use example
Actually, this is a very important concept of modern frameworks. Here is a question about this.
FROM: http://www.programcreek.com/2013/02/java-design-pattern-abstract-factory/
- Java Design Pattern: Abstract Factory
- Design Pattern Abstract Factory
- Design Pattern:Abstract Factory
- Design Pattern - Abstract Factory Pattern
- Abstract Factory Design Pattern && Strategy Design Pattern
- Delphi Design Pattern - Abstract Factory
- Design Pattern: Abstract Factory 模式
- 一句话Design Pattern:Abstract Factory
- Design Pattern - Creational Patterns - Abstract Factory Pattern
- Java Design Pattern: Factory
- Design Pattern 3: Factory Method && Abstract Factory Pattern
- Abstract Factory Design Pattern for Dependency Injection
- ◎Design Pattern: Abstract Factory 模式
- Design Pattern - Abstract Factory(C#)
- design pattern——abstract factory
- Java Design Patterns Abstract Factory
- Factory design pattern in java
- java design pattern (1. Factory Method pattern)
- 一种简单的方式实现Cocos2d-x 2.x版本按层级关系派发Touch事件
- win8 应用商店链接不上
- Port 80 in use by "Unable to open process" with PID 4
- 初识--springmvc
- Linux网络编程
- Java Design Pattern: Abstract Factory
- 庞果英雄会——杨辉三角的变形
- Html 练习
- EXCEL对数据的相对引用和绝对引用
- jsp自定义嵌套标签
- ios技术图
- Date命令日志打印输出
- openwrt 编程器固件的制作方法
- strerror