Java 工厂方法

Item 1: Consider static factory methods instead of constructors

是用静态工厂方法,而不是构造器,是因为工作方法有方法名,二构造器没有,工作方法可以描述方法作用,可读性比较好

public static Boolean valueOf(boolean b) {
       return b ? Boolean.TRUE : Boolean.FALSE;
}

另外使用工厂方法,有时候不一定每次都生成新的对象,而使用构造器会,有时候不用重复生成新的对象,可以提高程序性能

还可以返回子类对象。灵活性更高

工作方法的返回值对象,可以通过参数调用其他函数,进行不同的调用返回不同的对象

返回值对象的方法可以不需要如果对象的方法可以被写

还有一些限制就是,工厂方法没有 public 或者 protected 构造器,可以继承,和不容易被发现调用

你可能感兴趣的:(Java,java,php,node.js,spring,golang)