简单工厂模式
定义:定义了一个创建对象的类,由这个类来封装实例化对象的行为。
// 简单工厂模式
namespace ConsoleApp1
{
public abstract class Product
{
public abstract string getName();
}
public class IPhoneProduct : Product
{
public override string getName()
{
return "手机";
}
}
public class IPadProduct : Product
{
public override string getName()
{
return "平板";
}
}
public class WatchProduct : Product
{
public override string getName()
{
return "手表";
}
}
public class ConcreteCreator
{
public static Product createProduct(string d)
{
Product obj = null;
if (d.Equals("IPhone"))
{
obj = new IPhoneProduct();
}
if (d.Equals("IPad"))
{
obj = new IPadProduct();
}
if (d.Equals("Watch"))
{
obj = new WatchProduct();
}
return (Product)obj;
}
}
class Program
{
static void Main(string[] args)
{
Product product = ConcreteCreator.createProduct("IPhone");
if (product != null)
{
Console.WriteLine(product.getName());
}
product = ConcreteCreator.createProduct("Watch");
if (product != null)
{
Console.WriteLine(product.getName());
}
}
}
}