新手学习java设计模式之路——工厂模式
2013-09-15 21:32
591 查看
工厂模式分四种:简单工厂、工厂方法、静态工厂方法、抽象工厂模式
简单工厂: 以发送邮件和短信为例子
、
在使用的时候 根据类型 决定创建哪个对象 进行调用 这就是简单工厂。
简单工厂的优点:可以封装复杂对象 只把对象告诉使用者 。这样用户就不需要知道里面的细节,直接知道怎么调用就可以了。
简单工厂的缺点:简单工厂,拓展性不强。比如现在有的是邮件发送和短信发送,那么以后要加上平台消息发送之类的。那么就必须改变工厂类。那样不方便拓展。
工厂方法:继续以邮件和短信为例子
看了代码就能知道,工厂方法比简单方法方便 但是拓展性依旧不强 一旦需要新的方法 就必须改变工厂类
静态工厂方法:
、
相比工厂方法 静态工厂方法只是把方法静态化,使代码更加简化,让调用者更加方便。但拓展性依旧不强。
抽象工厂模式:
抽象工厂方法 使用多个工厂通过多态进行实现。这样做的好处就是弥补上面3中工厂方法的拓展性问题,当遇到需要拓展的时候,只
需要创建一个工厂类实现接口即可,不需要改变原来代码的结构。
工厂模式的好处是什么?封装自己对象实现的细节。让使用者只需简单的调用对象即可。
缺点:用户必须知道调用的对象是哪个。
本人新手。自学设计模式,希望各位大大看到不足之处,予以指出。谢谢
简单工厂: 以发送邮件和短信为例子
、
在使用的时候 根据类型 决定创建哪个对象 进行调用 这就是简单工厂。
简单工厂的优点:可以封装复杂对象 只把对象告诉使用者 。这样用户就不需要知道里面的细节,直接知道怎么调用就可以了。
简单工厂的缺点:简单工厂,拓展性不强。比如现在有的是邮件发送和短信发送,那么以后要加上平台消息发送之类的。那么就必须改变工厂类。那样不方便拓展。
工厂方法:继续以邮件和短信为例子
看了代码就能知道,工厂方法比简单方法方便 但是拓展性依旧不强 一旦需要新的方法 就必须改变工厂类
静态工厂方法:
、
相比工厂方法 静态工厂方法只是把方法静态化,使代码更加简化,让调用者更加方便。但拓展性依旧不强。
抽象工厂模式:
抽象工厂方法 使用多个工厂通过多态进行实现。这样做的好处就是弥补上面3中工厂方法的拓展性问题,当遇到需要拓展的时候,只
需要创建一个工厂类实现接口即可,不需要改变原来代码的结构。
工厂模式的好处是什么?封装自己对象实现的细节。让使用者只需简单的调用对象即可。
缺点:用户必须知道调用的对象是哪个。
本人新手。自学设计模式,希望各位大大看到不足之处,予以指出。谢谢
相关文章推荐
- 学习:java设计模式—工厂模式
- 学习:java设计模式—工厂模式
- Java实践之路(设计模式)——工厂模式(工厂方法)
- java学习之路----设计模式----观察者模式
- 我的设计模式学习之路2(工厂模式)
- 学习:java设计模式—工厂模式
- java学习之路---设计模式----工厂代理模式的进一步研究
- java设计模式学习之路
- 学习:java设计模式—工厂模式
- 学习:java设计模式—工厂模式
- java学习之路之接口(3)--工厂设计模式
- 学习:java设计模式—工厂模式
- 学习:java设计模式—工厂模式
- 学习:java设计模式—工厂模式
- 黑马程序员 【】java学习之路——单例设计模式简介
- 学习:java设计模式—工厂模式
- java学习之路-----设计模式---工厂模式
- 学习:java设计模式—工厂模式
- 我的设计模式学习之路二——工厂模式
- java学习之路--设计模式---代理模式