zoukankan      html  css  js  c++  java
  • C# 简单工厂(SimpleFactory)

    理解:建立一个工厂类,并在工厂类中通过switch 语句来决定返回何种子类的实例

    代码:

    using System.Windows.Forms;

    namespace DesignMode.FactoryMethod
    {
        //抽象商品类
        public abstract class Goods
        {
            public abstract void Show();
        }

        //衣服
        public class Clothes : Goods
        {
            public override void Show()
            {
                MessageBox.Show("衣服商品");
            }
        }

        //
        public class Shoes : Goods
        {
            public override void Show()
            {
                MessageBox.Show("鞋商品");
            }
        }

        //珠宝
        public class Jewelry : Goods
        {
            public override void Show()
            {
                MessageBox.Show("珠宝商品");
            }
        }


        public class SimplyFactory
        {
            public static Goods CreateGoods(string name)
            {
                Goods goods = null;
                switch (name)
                { 
                    case "衣服":
                        goods = new Clothes();
                        break;
                    case "":
                        goods = new Shoes();
                        break;
                    case "珠宝":
                        goods = new Jewelry();
                        break;
                }
                return goods;
            }
        }} 

    客户端代码:

             

           private void btn_SimpleFactory_Click(object sender, EventArgs e)

            {
                Goods goods = SimplyFactory.CreateGoods("");
                goods.Show();
            }

  • 相关阅读:
    常用模块(time,os,sys,collections,random,序列化模块,re)
    python-函数篇
    内置函数——filter和map
    python杂七杂八的用法
    计算机硬件
    操作系统简介
    Django入门
    linux下查看cpu物理个数和逻辑个数
    python反射的妙用
    Python(文件、文件夹压缩处理模块,shelve持久化模块,xml处理模块、ConfigParser文档配置模块、hashlib加密模块,subprocess系统交互模块 log模块)
  • 原文地址:https://www.cnblogs.com/kavilee/p/2377531.html
Copyright © 2011-2022 走看看