1:建立接口

namespace Factory
{
public interface IPerson
{ }
}

2:建立Worker、Student来继承IPerson接口

namespace Factory
{
public class Student : IPerson
{ } public class Worker : IPerson
{ }
}

3:配置文件,通过配置文件配置创建相应的对象

 <appSettings>
<add key="factoryConfig" value="Factory,Factory.Student"/>
</appSettings>

4:创建工厂类

namespace Factory
{
public class Factory
{
private static string factoryConfig = ConfigurationManager.AppSettings["factoryConfig"];
public static IPerson CreateInstance()
{
IPerson iPerson = null;
try
{
string assemblyName = factoryConfig.Split(',')[];
string typeName = factoryConfig.Split(',')[];
iPerson = (IPerson)Activator.CreateInstance(assemblyName, typeName).Unwrap();
}catch(Exception e){
throw e;
}
return iPerson;
}
}
}

最新文章

  1. myBatis oracle 与mysql自增问题
  2. nfs 配置
  3. JS-获取URL请求参数
  4. Flex导出excel报表
  5. javascript中的浅复制和深复制
  6. easyui datagrid使用
  7. 自动将每日的日志增量导入到hive中
  8. Java的正则表达式
  9. Linux驱动设计—— 中断与时钟@request_irq参数详解
  10. SQL锁表解决并发性
  11. 28、Jquery 页面效果
  12. 【贪心】【TOJ4107】【A simple problem】
  13. iOS自定制tabbar与系统的tabbar冲突,造成第一次点击各个item图片更换选中,第二次选中部分item图片不改变
  14. Mysql命令-求一列字段的总和
  15. 2017寒假零基础学习Python系列之函数之 递归函数
  16. JavaScript核心--Function
  17. 201771010142 张燕&amp; 杨蓉庆 实验十一 集合
  18. Redis详细讲解(Redis原理,Redis安装,Redis配置,Redis使用,Redis命令)
  19. java8 lambda 表达式
  20. python(十)、进程

热门文章

  1. Color the ball----HDOJ1556
  2. Bzoj 2393: Cirno的完美算数教室 容斥原理,深搜
  3. 怎么通过IE连接本机oracle数据库
  4. wxWidgets学习笔记——在屏幕上画简单的图形和文字
  5. lost connection to mysql server at &quot;reading initial communication packet&quot;,system error:2
  6. Webform Repeater的灵活运用
  7. Java NIO使用及原理分析 (四)
  8. ios 码云的使用总结
  9. Jmeter聚合报告分析
  10. 图解三种APP的区别