当我们的类有多个成员变量,我们使用构造器或者静态工厂创建他的实例可能就不是那么方便了,这时候,我们需要考虑其他方式,方便我们开发。
一种方式是方法注入:提供get,set 方法,需要什么参数 set 什么参数。 遗憾的是, javaBeans 模式自身有着很严重的缺点 因为构造过程被分到了几个调用中,在构造过程中 Java B……继续阅读 »
破玉
5年前 (2019-08-26) 1214浏览 0评论
0个赞
创建一个对象的传统方式就是使用构造器。还有一种方式就是使用静态工厂方法。静态工厂方法返回类的实例。以下是Boolean 对象的一个valueOf方法
public static Boolean valueOf(boolean b) {
return (b ? TRUE : FALSE);
}
&nbs……继续阅读 »
破玉
5年前 (2019-08-26) 1209浏览 0评论
0个赞
静态工厂和构造器都有个共同的局限性,不能很好的扩展大量的可选参数。
对于多种参数的类,我们一向习惯于使用重叠构造器,不同的构造器提供不同的参数,这种构造器模式可行,但是代码难以阅读,客户端代码难以编写。
public class Peopel {
private String name;
private String sex;
private……继续阅读 »
破玉
7年前 (2017-09-21) 1289浏览 0评论
0个赞
可以参考 静态工厂方法
用静态工厂方法代替构造器的几个优点:
1.静态工厂方法有名称
我们可以为静态工厂方法起不同的名称,从而在调用时识别出该方法创建的实例是哪种类型的。
2.避免创建重复的对象
我们在使用静态工厂方法时不必在每次调用时创建一个新的对象。可以将构建好的实例缓存起来,进行重复利用,从而避免创建不必要的重复
对象。可以将构造方法私有化,通过一个函……继续阅读 »
破玉
7年前 (2017-09-20) 1367浏览 0评论
0个赞