设计模式之简单工厂模式
来源:互联网 发布:帝国cms火车头视频接口 编辑:程序博客网 时间:2024/06/03 21:21
简单工厂模式基本实现流程
具体产品类:将需要创建的各种不同产品对象的相关代码封装到具体产品类中
抽象产品类:将具体产品类公共的代码进行抽象和提取后封装在一个抽象产品类中
工厂类:提供一个工厂类用于创建各种产品,在工厂类中提供一个创建产品的工厂方法,该方法可以根据所传入参数的不同创建不同的具体产品对象
客户端:只需调用工厂类的工厂方法并传入相应的参数即可得到一个产品对象
三种获取对象类型的方式:
Type.GetType(); typeof Factory factory = new Factory(); factory.GetType()
定义:
可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。类创建型模式
在简单工厂模式中用于创建实例的方法通常是静态(static)方法,因此又被称为静态工厂方法(Static Factory Method)模式
要点:如果需要什么,只需要传入一个正确的参数,就可以获取所需要的对象,而无须知道其创建细节
using UnityEngine;using System.Collections;using System;public interface IProduct{ void Display();}public class ProductA : IProduct{ public void Display() { Debug.Log("this is a ProductA"); }}public class ProductB : IProduct{ public void Display() { Debug.Log("this is a ProductB"); }}public class ProductC : IProduct{ public void Display() { Debug.Log("this is a ProductC"); }}public class Factory{ public static IProduct CreateProduct(string productName) { IProduct result = null; Type classType = Type.GetType(productName); result = Activator.CreateInstance(classType) as IProduct; return result; }}public class Test1{ public static void Main() { Factory.CreateProduct("ProductA").Display(); Factory.CreateProduct("ProductB").Display(); Factory.CreateProduct("ProductC").Display(); }}
阅读全文
0 0
- 设计模式 之简单工厂+ 工厂模式
- 设计模式之简单工厂设计模式
- 设计模式之简单工厂模式,工厂模式,策略模式
- 设计模式 之 简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂.
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- java sort使用
- Centos上安装oracle(Centos7,oracle11g)
- C/C++语言中:前置++/--和后置++/--
- web学习路线
- Navicat修改MySQL数据库密码就是这么简单
- 设计模式之简单工厂模式
- Java集合
- 用PN532对RFID进行读写和复制(附winfrom软件)
- 每天一个linux命令-文件(2)-du
- Oracle之集合写法改造
- log4j的使用
- [性能] SAP销售订单取数逻辑优化---索引表
- 蓝桥杯--海盗比酒量
- 网站伪静态化教程:利用ISAPI_Rewrite或URLRewrite组件