一直不知道什么叫做设计模式。。。等高人指教。。。代码如下:
using System;
using System.Collections.Generic;
using
System.Linq;
using System.Text;
using System.Reflection; //反射需要引用的空间
namespace Factory
{
class Program
{
static void
Main(string[] args)
{
Factory factory;
string providerName = "SqlServer"; //可使用XML配置
factory =
(Factory)Assembly.Load("Factory").CreateInstance("Factory." + providerName);
//反射找到SqlServer类
IDB objIDB = factory.Create();
objIDB.Open();
}
}
public interface IDB
{
void Open();
}
public class SQL : IDB
{
public void Open() { }
}
public class Oracle :
IDB
{
public void Open() { }
}
public abstract
class Factory
{
public abstract IDB Create();
}
public class SqlServer : Factory
{
public override IDB
Create()
{
return new SQL();
}
}
public class OracleServer : Factory
{
public override
IDB Create()
{
return new Oracle();
}
}
}