第二章 创建和销毁对象
1.考虑用静态工厂方法代替构造器
优势:
1.有名称
2.不必在每次调用它们的时候都创建一个新的对象;
3.可以返回原返回类型的任何子类型的对象;
JDBC(Java Database Connectivity)
服务提供者框架(Service Provider Framework)
服务接口、提供者注册API、服务访问API、服务提供者接口(负责创建其服务实现的实例);
4.在创建参数类型实例的对象,它们使代码变得更加简洁
2.遇到多个构造器参数时,要考虑使用构造器
class.newInstance 破坏了编译时的异常检查(Builder弥补不足)
总:如果类的构造器或静态工厂中具有多个参数,考虑用Builder模式;
3.用私有构造器或者枚举类型强化Singleton属性
单元素的枚举类型已经成为实现Singleton的最佳方法
4.通过私有化构造器强化不可实例化的能力
throw new AssertionError(); (构造器内)
可在上面加入注释,便于理解,如下:
suppress default coustructor for noninstratiability.
时间: 2024-10-18 04:46:46