EJ.01 考虑用静态工厂方法代替构造器
优点:
- 它们有名称;
- 不必在每次调用它们的时候都创建一个新的对象;
- 它们可以返回原返回类型的任何子类型的对象;
- 在创建参数化类型实例的时候,它们使代码变得更加简洁;
缺点:
- 类如果不含公有的或者受保护的构造器,就不能被子类化;
- 它们与其他的静态方法实际上没有任何区别。
深入理解静态工厂方法(见附件)
11.3.1 单例(Singleton)类
11.3.2 枚举类
11.3.3 不可变(immutable)类与可变类
11.3.4 具有实例缓存的不可变类
11.3.5 松耦合的系统接口
附件列表