大多数情况下,类的构造函数只会获取其参数值并使用它们来设置实例变量:
// Java
public class MyClass {
private int id;
public MyClass(int id) {
this.id = id;
}
}
Run Code Online (Sandbox Code Playgroud)
所以我理解了Scala默认构造函数语法的效率......只需在类名旁边的括号中声明一个变量列表:
// Scala
class MyClass(id: int) {
}
Run Code Online (Sandbox Code Playgroud)
但是,除了简单地将参数插入实例变量之外,那些需要构造函数实际执行STUFF的情况呢?
// Java
public class MyClass {
private String JDBC_URL = null;
private String JDBC_USER = null;
private String JDBC_PASSWORD = null;
public MyClass(String propertiesFilename) {
// Open a properties file, parse it, and use it to set instance variables.
// Log an error if the properties file is missing or can't be …Run Code Online (Sandbox Code Playgroud)