首页 > 其他 > 详细

静态工场方法Static Factory Method May be a better way to creat Object than Constructor

时间:2015-08-25 21:10:49      阅读:288      评论:0      收藏:0      [点我收藏+]

1.对于一个类而言,获取实例常用的方法就是提供一个public constructor

2.学过design pattern的人,肯定能猜到另外一种方法就是static factory method(sfm)

1 public static Boolean valueOf(boolean b){
2 return b?Boolean.TRUE:Boolean.FALSE;}


优点:

1.静态工场方法有名称,比构造器更能理解其职能。而且涉及构造器overload时,sfm更见清晰,除非你愿意写一堆参数不同的构造器

2.sfm每次使用时不需要每次都创建一个对象,参照flyweight模式,想想jdbc的连接池,sfm真是不错

3.sfm可以返回原返回类型的任何子类型对象

4.sfm在创建参数化类型实例的时候,使得代码更加简洁

缺点:

1.类如果不含public or protected的构造器,就不能被子类化

2.sfm与其他静态方法一个鸟样...

静态工场方法Static Factory Method May be a better way to creat Object than Constructor

原文:http://www.cnblogs.com/lknny/p/4758456.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!