- 考虑使用静态类方法代替构造器
有4个优点
- 工厂方法有名称,产生的代码更易于阅读
- 不必每次调用他们的时候都创建一个
- 可以返回原返回类型的任何子类型的对象
- 在创建参数化类型实例时,他们使代码变得更加简洁。
工厂方法惯用名称 - value of
- of
- getInstance
- newInstance
- getType
尽量避免提供公有构造器
- 遇到对个构造器参数时要考虑用builder模式
- 优先使用基本类型而不是装箱基本类型。要当心无意识的自动装箱。
- 避免使用final方法
- 内存泄露:如果一个栈先增长,然后收缩。那么,从栈中弹出的对象将不会被当做垃圾回收,即使使用栈的程序不会再引用这些对象。