饮料案例:

饮料类(父类):


    public class Drink
    {
        //虚方法
        public virtual void Driking() {
        }
    }

可乐类(继承父类饮料类)


    public class Cola:Drink
    {
        //重写父类的Driking()方法
        public override void Driking()
        {
            Console.WriteLine("Cola");
        }
    }

雪碧类(继承父类饮料类)


    public class Sprite:Drink
    {
        //重写父类的Driking()方法
        public override void Driking()
        {
            Console.WriteLine("Sprite");
        }
    }

饮料工厂类(factory)


    class DrinkFactory
    {
        public static Drink Init(string type) {
            Drink drink = null;
            switch(type){
                case "可乐":
                    drink = new Cola();
                    break;
                case "雪碧":
                    drink = new Sprite();
                    break;
            }
            return drink;
        }
    }

Main方法

class Program     {      

   static void Main(string[] args)         {       

      Console.WriteLine("请输入你要喝的饮料");        

     string type=Console.ReadLine();        

     Drink drink=DrinkFactory.Init(type);      

       drink.Driking();

     Console.ReadKey();      

   }    

}

转载于:https://www.cnblogs.com/yfyfyff/p/7286621.html

简单工厂模式(详细)(举例饮料)相关推荐

  1. JavaScript设计模式(一)-- 简单工厂模式

    定义 简单工厂模式:又叫静态工厂方法,由一个工厂对象决定创建某一种产品对象类的实例.主要用来创建同一类对象. 如果类太多,就提供一个 对于多个类,在每次创建时还要找相对应的类.为此,直接封装在一个函数 ...

  2. 工厂模式--简单工厂模式--抽象工厂模式

    工厂模式 作用:实现创建者与调用者的分离 简单工厂模式.工厂方法模式.抽象工厂模式,都是属于创建型设计模式.严格上来说,简单工厂模式不属于23设计模式之一,因为它违背了开闭原则. ========== ...

  3. 设计模式之工厂类模式总结对比、简单工厂模式、工厂方法模式、抽象工厂模式、带反射的工厂模式、例子代码分析、最详细

    1. 题目 假设某公司同时用SqlServer.MySql数据库,即会切换两数据库(不同数据库的sql语句有些许差异),同时,两数据库里均有对Users.Departments表的操作(sql代码不一 ...

  4. 设计模式Part3——简单工厂模式

    一.创建型模式 软件在运行时,类将实例化为对象,并由对象协作完成各项业务功能. 创建型模式(Creational Pattern)关注对象的创建过程,是最常用的设计模式. 创建型模式对类的实例化过程进 ...

  5. 设计模式之简单工厂模式

    一.概述 工厂模式具体包括了简单工厂.工厂方法.抽象工厂,它们是按照从简单到复杂的顺序排列的,属于设计模式中的创建型,其中简单工厂并不属于GOF的23中模式.   但是它是理解其它的工厂模式的一个很好 ...

  6. 设计模式 之美 -- 简单工厂模式

    文章目录 1. 解决问题 2. 应用场景 3. 实现 C++实现: C语言实现 4. 缺点 1. 解决问题 举例如下: 我们实现一个卖衣服的功能,衣服的种类有很多:帽子,裤子,T恤... 每卖一种衣服 ...

  7. 《JAVA与模式》之简单工厂模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述简单工厂模式的:简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method)模式.简单工厂模式是由一个工厂 ...

  8. 设计模式(四)简单工厂模式

    首先,简单工厂模式不属于23中涉及模式,简单工厂一般分为:普通简单工厂.多方法简单工厂.静态方法简单工厂. 1.简单工厂模式简介 定义 简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例. 简单 ...

  9. 设计模式-简单工厂模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述简单工厂模式的: 简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method)模式.简单工厂模式是由一个工 ...

  10. Java使用简单工厂模式对面向接口编程模式的深度解耦实现

    在Java和C#的编程世界里,并没有出现像C++那样的多脉继承,它们只支持单一的继承,或者多级继承,这一变化最大的影响,我觉得是大大的降低了编程的难度,因为没有了C++的多级多脉继承,所以接口出现了, ...

最新文章

  1. Mysql实现非程序控制读写分离
  2. 区块链死亡项目列表小程序:死亡硬币
  3. 那些陌生的C++关键字
  4. 做小程序费用太高?帮你选一个最省钱的方案
  5. dynamo python修改多个参数_40岁小白学了30天python发现,编程真的其乐无穷
  6. Java Collections工具类
  7. linux中断处理体系结构
  8. requestAnimationFrame()方法实现帧动画
  9. 【多媒体基础知识】 --- 什么是流媒体技术
  10. 继续理解socekt具体使用--2
  11. SCH自动标注器件号
  12. BeyondCompare4使用脚本,每月一次
  13. tomcat守护进程
  14. Vue3 到底哪里好?和React Hook对比有啥有优势?本文详解
  15. JavaScript / Summary of Interview Questions
  16. 以太网模块支持SCADA 软件通过三菱以太网协议连接
  17. 【深度学习】cs231n计算机视觉 SVM分类器
  18. 山东大学软件学院网络攻击与防范2022-2023林丰波100词详解
  19. Unity/c#鼠标右键控制相机围绕物体旋转/滚轮控制远近
  20. jsp页面动态显示本地时间

热门文章

  1. 怎么做网络营销在网站优化中能快速提升搜索引擎信任的方法!
  2. 网站优化不能忽视网站外链的作用
  3. android 4.2 桌面快捷方式,Android 添加桌面快捷方式操做
  4. php编写函数6,编写自己的PHP扩展函数
  5. java逐行读取文件数组_快速高效地在Java中逐行读取大型JSON文件的方法
  6. java 涂鸦_java 涂鸦画板
  7. 命令模式 java_JAVA中的命令模式实例教程
  8. 使用VAE、CNN encoder+孤立森林检测ssl加密异常流的初探——真是一个忧伤的故事!!!...
  9. influxdb入门——和mongodb一样可以动态增加字段
  10. python 让系统不识别转义字符 print的时候直接输出