【第一条】 考虑用静态工厂方法代替构造器
常见的静态工厂方法名
这里附上静态工厂方法的一些约定俗成的名称:
valueOf/Of——类型转换,返回的实例和入参具有相同的值,比如Boolean.valueOf()、EnumSet.valueOf()
getInstance——返回一个预先创建好的实例
newInstance——返回一个新的实例
总结
静态工厂方法具有三大优势——具名、环保、多子。
如果一个类提供了静态工厂方法,那么也就不需要考虑对这个类进行工厂模式了。
我们在创建类时,切忌第一反应就是提供公有构造器,要优先考虑静态工厂方法。