您的位置:首页 > 其它

设计模式-简单工厂模式和策略模式

2016-06-27 20:25 232 查看
简单工厂模式:

简单工厂模式的思想为:根据不同参数,返回不同对象。

栗子1:spring的application.xml 就是根据参数(bean的id属性值)来获取对象的。

栗子2:计算器的设计,可以设计“运算”父类,加减乘除等等为子类,那么就可以使用该模式,根据参数(操作符)来获取“运算”子类,然后(父类的引用指向子类对象)调用子   类的“运算”方法

使用方法;创建工厂类,在工厂类对象里定义一个根据参数获取对象的方法,每当需要获取对象时,给工厂类的工厂方法传参数即可。

策略模式:

根据不同的策略,生成不同的对象。和简单工厂模式很类似。

区别:

简单工厂模式和策略模式都是根据参数获取对象,获取对象的类,叫工厂类。

不同之处在于,简单工厂模式的工厂类和工厂类生产(返回)的对象没有父子关系,而策略模式,工厂类是所有生产出的对象类的父类(或者公共接口)

那么,也可以从形式上,把策略模式看成特殊的简单工厂模式,特殊在工厂类必须是产生对象的父类。

从使用上讲,简单工厂模式可以用在任何生产出对象的情况,而策略类,要用在多态上
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: