using System; using System.Collections.Generic; using System.Text; namespace 工厂模式 { class Program { //抽象商品 public abstract class Product { public abstract void Show(); } //具体商品 public class heat:Product { public override void Show() { Console.Write("我是帽子!"); } } //具体商品 public class shoes:Product { public override void Show() { Console.Write("我是鞋子!"); } } //抽象工厂 public abstract class Factory { public abstract Product CreatProduct(); } //具体工厂 public class ShoeFactory : Factory { public override Product CreatProduct() { return new shoes(); } } //具体工厂 public class HeatFactory:Factory { public override Product CreatProduct() { return new heat(); } } static void Main(string[] args) { //用抽象工厂定义,用具体工厂实例化 Factory F1=new ShoeFactory(); Factory F2=new HeatFactory(); Product p = F1.CreatProduct(); p.Show(); } } }