
学习笔记
iteye_7449
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
1. 使用静态工厂方法代替构造函数
在想创建一个对象的时候,尽量使用静态工厂方法(static factory method)来代替构造方法。 比如:Boolean b = Boolean.valueOf(true); 而非Boolean b = new Boolean(true); 好处之一,与构造方法不同,方法是有名字的。在弄一些类似DSL的时候,可能会比较有用。与其要记住很多构造参数的含义,不如用一个命名良好的方法来...2008-07-04 15:26:38 · 217 阅读 · 0 评论 -
使用Chain的Builder方法代替有超多参数的构造方法
我们有时候会遇到一些有超多参数的构造函数。其实对于日渐复杂的类来说,这种情况并不少见。使用Builder和一些method chain的改造,可以使我们的代码看起来更加DSL化。 [code="java"] Car car = CarBuilder.buildCar(CarType.MINI).engine(CarEngine.CVTT).size(3.15).build(); [/code...2008-07-08 17:37:27 · 337 阅读 · 0 评论 -
对于一个单例的存取强制一个private constructor或者一个enum
在Java中有很多需要单例(Singleton)的场合,来保证其只被创建一次。先来看看2种在JDK1.5之前的2种实现方法,然后再看一种JDK1.5及以后才可以用的实现方法。 [list=1] [*]声明constructor为private,然后将该单例对象声明为public的。 [code="java"] // Singleton with public final field pu...2008-07-17 17:18:03 · 233 阅读 · 0 评论 -
通过private的构造方法来强制一个类不能被实例化
要保证一个类不能被实例化(比如某些Utility类,主要是一些静态方法),为这个类写一个private的构造方法那是最好的了。 [code="java"] public class UtilityClass { private UtilityClass() { throw new AssertionError(); } ...... } [/code...2008-07-18 17:34:05 · 910 阅读 · 0 评论