简单工厂:
工厂模式:简单工厂,工厂方法,抽象工厂三种. 简单工厂(力求简洁)
工厂即为生产东西的地方.在C#也有这种模式,充分利用了面向对象语言的三大特征(多态,继承),简单工厂.工厂的功能就是生产,而生产些什么呢?一个工厂可以生产鞋子,生产衣服.它们所处的车间不一样,所以需要两个不同的类,这两个类继承工厂生产这个功能.
简单工厂,之所以成为简单.即这个工厂所生产的东西是有限的,固定的.因为它只有鞋子,衣服,是具体的.也可以说是简单工厂的缺点(生产产品固定,要改动case语句),优点(①降低了客户与产品之间的耦合度,客户是客户,工厂是工厂,客户只需说自己需要什么②实现了代码的复用,可以少写点代码)
介绍完毕,上干货
工厂的接口
public abstract class IFactory{//生产 抽象方法public abstract void Production();}
工厂可实现的产品,鞋子,衣服
//生产鞋子public class ShoesClass : IFactory{public override void Production(){Console.WriteLine("生产鞋子");}}
public class ClothesClass : IFactory{public override void Production(){Console.WriteLine("生产了衣服");}}
根据不同需求来实现工厂的生产功能
public class Factory{IFactory f = null;public IFactory Create(string type){switch (type){case "Shoes":f = new ShoesClass();break;case "Clothes":f = new ClothesClass();
break;
default:break;}return f;}}
客户端实现
class Program{static void Main(string[] args){IFactory f = new Factory().Create("Clothes");f.Production();Console.ReadKey();}}