Effective Java 3

来源:互联网 发布:药典 有软件吗 编辑:程序博客网 时间:2024/06/05 05:39

第4条:避免重复的对象

”重复使用同一个对象,而不是每次需要的时候就创建一个功能上等价的新对象,通常前者更为合适。“

这样一来,对那些同时提供了静态工厂方法和构造函数的非可变类,静态工厂方法的优势就很明显了。有时候还有一些已知不会被修改的对象也可以重用它们,静态初始化器就是这个作用。

private static final Date BOOM_START;

static {

   Calendar gmtCal = Calendar.getInstance(TimeZone.getTimeZone("GMT"));

   gmtCal.set(1946,Calendar.JANUARY,1,0,0,0);

   BOOM_START=gmtCal.getTime();

   ...............

}

这条的内容并不是说“创建新对象的代价非常昂贵,应该尽量避免创建对象”。有进修创建附加对象倒能使程序更加清晰、简洁、功能强大,这有时候也是一件好事。有时候感觉条目似乎自相矛盾,但大师的意思也许是要我们自己考虑适当的情况用适当的策略,而不是照搬硬套。

原创粉丝点击