1. 考虑使用静态工厂方法替代构造方法2. 当构造方法参数过多时使用 builder 模式3.使用私有构造方法或枚举类实现 Singleton 属性4. 使用私有构造器执行非实例化5. 依赖注入优于硬连接资源(hardwiring resources)6. 避免创建不必要的对象7. 消除过期的对象引用