设计模式之工厂模式
来源:互联网 发布:杭州淘宝商学院地址 编辑:程序博客网 时间:2024/06/01 16:28
工厂模式是比较简单,也是比较好用的一种方式。根本上说,工厂模式的目的就根据不同的要求输出不同的产品。比如说吧,有一个生产鞋子的工厂,它能生产皮鞋,也能生产胶鞋。如果用代码设计,应该怎么做呢?
public interface Shoe{}public class Leather_Shoe:Shoe{ public Leather_Shoe() { Console.WriteLine("This is a leather show!\n""); }}public class Rubber_Shoe:Shoe{ public Rubber_Shoe() { Console.WriteLine(""This is a rubber shoe!\n""); }}我们的ShoeFactory应该是怎么样呢?
public class ShoeFactory{ public Leather_Shoe MakeLeather_Shoe() { return new Leather_Shoe(); } public Rubber_Shoe MakeRubber_Shoe() { return new Rubber_Shoe(); }}
怎么使用这个工厂呢?我们来写下面的代码:
string ShoeName = Console.ReadLine(); Shoe MyShoe = null; ShoeFactory MyShoeFactory = new MyShoeFactory(); switch (ShoeName) { case "Leather_Shoe":MyShoe = MyShoeFactory.MakeLeather_Shoe();break; case "Rubber_Shoe":MyShoe = MyShoeFactory.MakeRubber_Shoe();break; default: break; }
0 0
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之---工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之-工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之工厂模式
- 设计模式之 ------工厂模式
- 设计模式之工厂模式
- V4包的经常错误
- Compare And Swap(CAS)实现无锁多生产者
- 精通Hibernate——Hibernate内置标识符详解
- Lintcode 主元素
- 【设计模式】代理模式实现连接池
- 设计模式之工厂模式
- 237 Delete Node in a Linked List
- Matlab--多项式
- C - The C Answer (2nd Edition) - Exercise 1-19
- Android编程规范与常用技巧
- python类型
- scala 学习笔记-王家林老师的Scala之react、loop通过线程重用的方式实现并发编程
- 关于ARM的22个常用概念
- 项目风险管理之管理规划(软考笔记)