IT评测·应用市场-qidao123.com

标题: 计划模式-工厂计划 [打印本页]

作者: 南七星之家    时间: 2024-7-18 20:02
标题: 计划模式-工厂计划
在C#中实现工厂计划模式,可以创建一个工厂类,它根据传入的参数决定创建哪个具体类的实例。以下是一个简单的示例:
  1. // 抽象产品类
  2. public abstract class Car
  3. {
  4.     public abstract void Drive();
  5. }
  6. // 具体产品类
  7. public class BmwCar : Car
  8. {
  9.     public override void Drive()
  10.     {
  11.         Console.WriteLine("Driving BMW.");
  12.     }
  13. }
  14. public class AudiCar : Car
  15. {
  16.     public override void Drive()
  17.     {
  18.         Console.WriteLine("Driving Audi.");
  19.     }
  20. }
  21. // 工厂类
  22. public static class CarFactory
  23. {
  24.     public static Car CreateCar(string carType)
  25.     {
  26.         switch (carType)
  27.         {
  28.             case "BMW":
  29.                 return new BmwCar();
  30.             case "Audi":
  31.                 return new AudiCar();
  32.             default:
  33.                 throw new ArgumentException("Invalid car type");
  34.         }
  35.     }
  36. }
  37. // 使用工厂创建产品实例
  38. public class Program
  39. {
  40.     public static void Main(string[] args)
  41.     {
  42.         Car bmw = CarFactory.CreateCar("BMW");
  43.         bmw.Drive();
  44.         Car audi = CarFactory.CreateCar("Audi");
  45.         audi.Drive();
  46.     }
  47. }
复制代码
在这个例子中,CarFactory 是一个工厂类,它根据传入的 carType 字符串来创建相应的 Car 类型的实例。如许,客户端代码只必要调用工厂方法,而不必要本身直接实例化产品类。这提供了一种灵活性,可以在不修改客户端代码的情况下引入新的产品类型。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4