如果程序经常请求创建相同的对象, 并且创建对象的代价很高, 这项改动可以提升性能. (不可变类, 单例, 枚举).可以返回原类型的子类型对象....).依赖注入适用于: 构造函数, 静态工厂, builder模式.优点: 灵活, 复用, 易于测试.一个有用的变种: 将资源工厂传入构造函数.依赖注入的framework: Dagger, Guice,...Spring.第6条 避免创建不必要的对象一般来说, 最好能重用对象而不是每次需要的时候创建一个相同功能的新对象....do this包含相同字符串的字面常量对象是会被重用的(同一个虚拟机).对于同时提供了静态工厂方法和构造方法的不可变类, 通常可以使用静态工厂方法而不是构造器, 以避免创建不必要的对象.比如Boolean.valueOf...小对象的构造器只做很少量的显式工作, 创建和回收都是很廉价的, 所以通过创建附加的对象提升程序的清晰简洁性也是好事.通过维护自己的对象池(object pool)来避免创建对象并不是一种好的做法(代码,