您的位置:首页 > 其它

简单工厂模式

2016-12-27 23:42 106 查看
创建一个管理对象的工厂

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApp.ClassDLL
{
public class ClassFactory
{
//或者来创建工厂,where 限定 T 必须继承IClassManager接口,new()表示子类必须具有无参构造函数
public static IClassManager CreateInstance<T>() where T : IClassManager,new()
{
Type type = typeof(T);
object obj = Activator.CreateInstance(type);
return obj as IClassManager;
}
}
}


所有类都是继承接口

public interface IClassManager
{
void Show();
}


以下是需要创建的类:

public class ClassA : IClassManager
{
public void Show()
{
Console.WriteLine("AAAAAAAA");
}
}

public class ClassB : IClassManager
{
public void Show()
{
Console.WriteLine("BBBB");
}
}


测试 方法

static void Main(string[] args)
{
ClassFactory.CreateInstance<ClassA>().Show();
ClassFactory.CreateInstance<ClassB>().Show();
Console.ReadKey();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  工厂模式