【发布时间】:2018-10-22 21:08:51
【问题描述】:
开始阅读“Effective java”,不明白为什么当我尝试编写示例时它对我不起作用..
编译错误:
Error:(12, 16) java: 类 Car 中的构造函数 Car 不能应用于 给定类型;
public class Car {
String model;
//no private constructor
public static Car fromModel(String model) {
return new Car(model);
}
}
这里一切正常:
public class Car {
String model;
//no private constructor
public static Car fromModel(String model) {
return new Car(model);
}
}
//Here everything is OK:
public class Car {
String model;
private Car(String model) {
this.model = model;
}
public static Car fromModel(String model) {
return new Car(model);
}
}
如果“考虑静态工厂方法而不是构造函数”,我为什么要生成构造函数???
【问题讨论】:
-
你为什么会期待第一部作品?您正在调用一个不存在的构造函数。
标签: java effective-java