zoukankan      html  css  js  c++  java
  • c#工厂模式

    创建一个抽象类:

    public abstract class Test {
       public abstract void Print();//输出信息
    }

    创建输出123的测试类

    public class Test1: Test {
       public override void Print()
       {
         Console.WriteLine("123");
       }
    }

    创建输出456的测试类

    public class Test2: Test {
       public override void Print()
      {
         Console.WriteLine("456");
      }
    }

    创建抽象工厂类

       /// <summary>
        /// 抽象工厂类
        /// </summary>
        public abstract class Creator
        {
            // 工厂方法
            public abstract TestCreateTest();
        }
    创建123的工厂类

    public class Test1Factory : Creator {
       public override Test TestCreateTest()
       {
         return new Test1();
       }
    }

    创建456的工厂类

    public class Test2Factory : Creator {
       public override Test TestCreateTest()
       {
         return new Test2();
       }
    }

    客户端调用的时候:

    Creator creator1= new Test1Factory ();
    Creator creator2= new Test2Factory ();
    Test t1 = Test1Factory .TestCreateTest();
    t1.Print();
    Test t2 = Test2Factory .TestCreateTest();
    t2 .Print();
    如果需求需要增加,这时候只需要在创建789的类,和相应的工厂类就可以了

  • 相关阅读:
    类型参数化
    scala 集合类型
    scala 列表List
    统计HDFS 上字节数据统计
    用scala 实现top N 排名
    scala 基础笔记
    Java 设计模式之 装饰者模式
    通过java api 读取sql 中数据(查询)
    leetcode 34. Search for a Range
    canvas画简单电路图
  • 原文地址:https://www.cnblogs.com/zwyAndDong/p/9754162.html
Copyright © 2011-2022 走看看