抽象工厂模式(Abstract Factory)
来源:互联网 发布:mastercam编程教程 编辑:程序博客网 时间:2024/06/05 03:12
工厂三姐妹中的最后升级是抽象工厂模式,现在我们来说说抽象工厂。
定义:
提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。
代码结构图:
现在我们假设这里有电脑的cpu和Ram,其中电脑的类别中分为Pc和Mac,则抽象中的结构图如下:
在这幅图中,逻辑是很明显的。
代码部分:
根据上面的关系,我们可以得到下面的具体的代码
interface Cpu { public Cpu() { } } interface Ram { public Ram() { } } //四个具体产品 public class PcCpu : Cpu { } public class MacCpu : Cpu { } public class PcRam : Ram { } public class MacRam : Ram { } //抽象工厂角色 public interface ComputerFactory { Cpu createCpu(); Ram createRam(); } //两个具体工厂角色 public class PcProducer : ComputerFactory { public Cpu createCpu() { return new PcCpu(); } public Ram createRam() { return new PcRam(); } } public class MacProducer : ComputerFactory { public Cpu createCpu() { return new MacCpu(); } public Ram createRam() { return new MacRam(); } }}
工厂是一个产品的封装,而抽象工厂是对一系列相关产品的封装,俩者都是将实体对象和动作解耦,更有利于我们的以后的维护和修改。
反射技术:
在抽象工厂中引入了反射的概念,反射也就是把代码中的具体的固定的常量变成了变量。具体的格式是Assembly.load("程序集名称").CreateInstance("命名空间.类名称"),用字符串来实例化对象,变量是可以随时更新的,更加的灵活。
工厂在一步一步的升级,我们的学习也在逐步的深入。。。。。
0 0
- 抽象工厂(Abstract Factory)模式
- 抽象工厂模式(Abstract Factory)
- 抽象工厂(Abstract Factory)模式
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 2--抽象工厂模式(Abstract Factory)
- 抽象工厂模式(abstract factory pattern)
- 抽象工厂模式(Abstract Factory Pattern)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- 抽象工厂模式(Abstract Factory)
- POJ2823 Sliding Window (单调队列的基本应用)
- Python 基础07
- Spark1.x编译与安装
- 使用Velocity模板技术构建代码生成器
- mybatis SqlSessionDaoSupport的使用(附代码下载)
- 抽象工厂模式(Abstract Factory)
- 自定cell(XIB)团购思路
- Leetcode--Remove Duplicates from Sorted List II
- Android4.4----Vold挂载管理分析(一)
- hadoop单机模式安装
- Python 基础08 面向对象
- 简单编程(二十一)计数排序法
- Spark1.x RDD基本操作
- Android双向侧边滑动实现