设计模式之简单工厂模式
来源:互联网 发布:网络好歌推荐100首 编辑:程序博客网 时间:2024/05/21 22:58
所谓简单工厂模式其实就是把一些类进行包装,封装在一起,用到哪一个类的时候在实例化哪一个类。举个简单的例子就像家中的电视机,电视机上面有很多按钮,其中有菜单,有调节屏幕明亮程度的,有调节音量大小的。这些每一个按钮都会完成一个功能,而将这些封装起来的就是电视机,利用函数,通过参数的不同而返回不同的实例化对象。用代码表示则如下:
//功能选择类ClassFunctionChoice{Public virtual void GetResult(){String result=“…...”;Return result;}}//菜单类Class Menu:FunctionChoice{Public override void GetResult(){Return Console.writeline(“输出菜单”);}}//加大音量类Class AddVoice:FunctionChoice{Public override void GetResult(){Return console.writeline(“加大音量”);}}//减小音量类Class SubVoice:FunctionChoice{Public override void GetResult(){Return Console.writeline(“减小音量”);}}//电视机类,相当于一个工厂Class TV{//通过参数的不同实例化不同的对象Public static FunctionChoicecreateFunctionChoice(string operate){FunctionChoice oper=null;Swich (operate){Case “菜单”:Oper=new Menu();Break;Case "加大音量":Oper=new AddVoice();Break;Case "减小音量":Oper=new SubVoice();Break;}Return oper;}}
在主程序中,如果我想加大音量,则如下:
FunctionChoice oper ;oper=TV.createFunctionChoice(“加大音量”);oper.GetResult();
如果想增加其他的类,如上下换台类,则只需要增加其子类,然后在电视机工厂中增加case就可以了。简单工厂其实就是利用一个包装类实例化出合适的对象,通过多态,返回父类的方式,实现了功能的结果。
2 0
- 设计模式 之简单工厂+ 工厂模式
- 设计模式之简单工厂设计模式
- 设计模式之简单工厂模式,工厂模式,策略模式
- 设计模式 之 简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂.
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- 设计模式之简单工厂
- Subsets
- USACO Sorting a Three-Valued Sequence
- HreoWinGauge2.0组件集应用示例----数据输入输出
- 在mybatis中遇到奇怪的问题
- Mac OS 10.9.1 输入法切换(Vmware)
- 设计模式之简单工厂模式
- Jump Game II
- 【C++学习】vector的使用,输入一串数字,输出相邻和---ShinePans
- Displaytag实现分页
- 杭电 2095
- Android-Intent
- RL-TCPNet的移植与使用简介
- 真机或Start BlueStacks在Eclipse中找不着时
- 性能测试之LoadRunner11 破解