我偶然发现了以下代码:
public class PluginResult {
public PluginResult(Status status) {
this(status, PluginResult.StatusMessages[status.ordinal()]); //this line
}
public PluginResult(Status status, String message) {
this.status = status.ordinal();
this.messageType = message == null ? MESSAGE_TYPE_NULL : MESSAGE_TYPE_STRING;
this.strMessage = message;
}
我想知道它在这一行做什么:
this(status, PluginResult.StatusMessages[status.ordinal()]);
它是否调用同一个类的另一个重载构造函数?
最佳答案
是的,完全正确。它本质上与在 C++ 中提供参数的默认值相同(从结果的角度来看)。
关于java - 从重载构造函数调用 `this`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27196018/