我在想Java中构造函数应该放多少代码?我的意思是,你经常在构造函数中调用辅助方法,但有时会有一些较长的初始化事物,例如对于从文件,用户界面或其他程序中读取的程序,只初始化实例变量,构造函数可能会更长(如果你不使用辅助方法).我有一些想法,构造函数通常应该简洁明了,不应该吗?这有例外吗?
我在Kotlin中使用数据类来显着减少我不得不写的Java代码量.
但是,在我的一个Java类中,我不知道如何在Kotlin中实现相同的结果.
我的Java类看起来有点像这样:
public class DataObject {
private int mId;
private String mName;
public DataObject(int id, String name) {
mId = id;
mName = name;
}
public DataObject(Context context, int id) {
mId = id;
Cursor cursor = ...
cursor.moveToFirst();
mName = cursor.getString(...);
cursor.close();
}
public int getId() {
return mId;
}
public String getName() {
return mName;
}
}
Run Code Online (Sandbox Code Playgroud)
我试图在Kotlin中重写它,到目前为止我有这个:
data class DataObject(val id: Int, val name: String) {
constructor(context: Context, id: Int) : this(id, fetchName(context))
private fun fetchName(context: …
Run Code Online (Sandbox Code Playgroud)