簡單工廠模式(Simple Factory) 類圖 描述 簡單工廠: 一個抽象產品類,可以派生多個具體產品類; 一個具體工廠類; 工廠只能創建一個具體產品。 應用場景 汽車介面 汽車類 汽車工廠類 調用,從配置文件中讀取操作符 ...
簡單工廠模式(Simple Factory)
類圖
描述
簡單工廠:
一個抽象產品類,可以派生多個具體產品類;
一個具體工廠類;
工廠只能創建一個具體產品。
應用場景
汽車介面
public interface ICar { void Print(); }
汽車類
public class Audi : ICar { public void Print() { Console.WriteLine("這是一輛奧迪車."); } } public class Benz : ICar { public void Print() { Console.WriteLine("這是一輛賓士車."); } }
汽車工廠類
public class CarFactory { public string name { get; set; } /// <summary> /// 生產汽車 /// </summary> /// <returns></returns> public ICar CreateCar() { ICar car = null; switch (name.ToLower()) { case "audi": car = new Audi(); break; case "benz": car = new Benz(); break; } return car; } }
調用,從配置文件中讀取操作符
string value = ConfigurationManager.AppSettings["simpleFactoryPattern"]; CarFactory factory = new CarFactory(); factory.name = value; ICar car = factory.CreateCar(); car.Print();