Effective Java(一)考虑使用静态方法代替构造器

对于类而言,为了让客户端获取它自身的一个实例,最常用的方法是提供一个公有的构造器,还有一个方法就是静态工厂方法。

静态工厂方法的优势

有名称

一个类智能有一个带有指定签名的构造器,我们可以通过改变参数列表的顺序来提供两个构造器。实际上,这样会给开发人员造成困惑,永远记不住该用哪个构造器。

不必每次调用它们的时候都创建一个新对象

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

使代码变得更简洁

//构造方法
Map<String,Object> m = new HashMap<String,Object>()

//静态方法
Map<String,Object> m = HashMap.newInstance()

猜你喜欢

转载自www.cnblogs.com/bigdogjava/p/9545591.html
今日推荐