zoukankan      html  css  js  c++  java
  • 工厂模式之工厂方法案例

    工厂方法模式

    首先创建控制台应用程序项目

    1.创建AbstractProduct抽象产品类。在该类中定义抽象产品方法。

    public abstract class IAbstractProduct
        {
            public abstract string Add();
        }

    2.创建ProductAProductB两个具体产品类。请根据工厂方法模式的内容,在两个具体产品类中添加内容。

    public class ProductA : AbstractProduct.IAbstractProduct
        {
            public override string Add()
            {
                return "创建具体产品A";
            }
        }
    
    public class ProductB:AbstractProduct.IAbstractProduct
        {
            public override string Add()
            {
                return "创建具体产品B";
            }
        }

    3.创建AbstractFactory抽象工厂类。在该类中定义抽象工厂方法。

    public abstract class IAbstractFactory
        {
            public abstract AbstractProduct.IAbstractProduct Create();
        }

    4.创建ConcreteFactoryAConcreteFactoryB两个具体工厂类。根据工厂方法模式的内容,在两个具体工厂类中添加内容

    public class ConcreteFactoryA : AbstractFactory.IAbstractFactory
        {
            public override IAbstractProduct Create()
            {
                return new ProductA();
            }
        }
    
    public class ConcreteFactoryB:AbstractFactory.IAbstractFactory
        {
            public override IAbstractProduct Create()
            {
                return new ProductB();
            }
        }

    5.Program类中,调用不同的工厂类实例化不同的产品类,通过Console.WriteLint()输出对应的提示信息。

    static void Main(string[] args)
            {
                IAbstractFactory factoryA = new ConcreteFactory.ConcreteFactoryA();
                IAbstractProduct product1 = factoryA.Create();
                Console.WriteLine(product1.Add());
                IAbstractFactory factoryB = new ConcreteFactory.ConcreteFactoryB();
                IAbstractProduct product2 = factoryB.Create();
                Console.WriteLine(product2.Add());
                Console.ReadKey();
            }

    结果:

  • 相关阅读:
    softmax in pytorch
    python使用xlrd读取excel数据
    redis集群扩容(添加新节点)
    redis集群添加新节点
    重新创建redis集群的注意事项
    在三台服务器,搭建redis三主三从集群
    UI自动化测试工具Airtest/Poco
    单个机器部署redis集群模式(一键部署脚本)
    内置函数二
    内置函数一
  • 原文地址:https://www.cnblogs.com/lhl123/p/10642699.html
Copyright © 2011-2022 走看看