简单工厂模式
来源:互联网 发布:php表单提交数据过滤 编辑:程序博客网 时间:2024/06/09 15:31
1、什么是简单工厂模式?
简单工厂模式属于类的创建型模式又叫静态工厂方法模式,通过专门定义一个类来负责定义其他类的实例,被创建的类通常都有共同的父类。
注:简单模式不属于标准的设计模式,它不属于23中模式中的一种模式。
2、模式中包含的角色及其职责
(1)、工厂角色
简单工厂模式的核心,它负责实现创建所有实例的内部逻辑,工厂类可以被外部直接调用,创建所需的产品对象。
(2)、抽象角色
简单工厂 模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接口。
(3)、具体的产品
简单工厂模式所创建的具体实例对象
3、简单工厂模式的优缺点:
(a)、优点:利于软件结构的优化
(b)、缺点:扩展性不好,高内聚不好。
3、 案例:
#include<iostream> #include<string.h> using namespace std; class Fruit { public: virtual void getFruit() = 0; }; class Banana :public Fruit { public: virtual void getFruit() { cout << "我是香蕉..." << endl; } }; class Apple :public Fruit { public: virtual void getFruit() { cout << "我是苹果..." << endl; } }; class Factory { public: Fruit *creat(char *p) { if (strcmp(p,"banana")==0) { return new Banana; } else if (strcmp(p, "apple") == 0) { return new Apple; } else { cout << "不支持!" << endl; return NULL; } } }; int main(void) { Factory *f = new Factory; Fruit *fruit = NULL; // 工厂生产香蕉 fruit = f->creat("banana"); fruit->getFruit(); delete fruit; // 工厂生产苹果 fruit = f->creat("apple"); fruit->getFruit(); delete fruit; delete f; f = NULL; return 0; }
阅读全文
0 0
- 工厂模式-简单工厂
- 工厂模式-简单工厂
- 工厂模式-简单工厂模式
- 工厂模式-简单工厂模式
- 简单工厂模式,工厂模式
- 工厂模式-简单工厂模式
- 简单工厂模式,工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂、工厂模式、抽象工厂模式
- 简单工厂&工厂模式&抽象工厂模式
- 简单工厂和工厂模式
- 简单工厂和工厂模式
- 1,工厂模式--简单工厂
- 简单工厂和工厂模式
- 简单工厂,工厂模式,抽象工厂
- 简单工厂,工厂模式,抽象工厂
- 简单工厂、工厂方法、抽象工厂模式
- 简单工厂、工厂模式和抽象工厂
- 【Kotlin 语言】1. 环境安装 | 变量 | 简单使用 | 函数 | 异常 | 递归
- Window之设定静态ip-yellowcong
- PHP入门(第八弹:控制语句)
- MD5加密
- Port 8080 required by Tomcat v7.0 Servcer at localhost is already in use.
- 简单工厂模式
- Yet Another Number Sequence CodeForces
- MapReduce---连接操作--Reduce端连接
- 树的子结构
- POJ2533最长上升子序列
- 不重启服务器重新加载Spring上下文
- JS怎么取后台获取的值
- 做开发8年多了,未来还要做什么
- 动态规划(爬楼梯问题)