4.通过私有构造器强化不可实例化的能力
工具类不希望被实例化。
企图通过将类做成抽象类来强制该类不被实例化是行不通的,因为该类可以被子类化,而该子类可以被实例化。
只有当类不含有显示构造器时,编译器才会生成缺省构造器,因此可设置私有构造器即可解决问题。
5.避免创建不必要的对象
对于同时提供静态工厂方法和构造器的不可变类,优先使用静态工厂方法,以避免创建不必要的类。
自动装箱,无意识的自动装箱,会产生多余对象。应优先使用基本类型。
小对象的构造器只做少量显示工作,因此小对象的创建和回收动作廉价,可以考虑创建。
通过维护对象池来避免创建对象不是一种好方法,除非池中对象非常重量级,如数据库连接池。
6.消除过期的对象引用
只要类是自己管理内存,就应该警惕内存泄露问题。