java - 从重载构造函数调用 `this`

标签 java

我偶然发现了以下代码:

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/

相关文章:

java - 在 Maven 依赖插件中使用本地 jar 作为 Artifact ?

Java.lang.Runtime异常: Take Picture failed?

java - 当与 Sprite 发生碰撞时,如何从 Sprite 数组列表中删除 Sprite 并将其从屏幕上移除? Java/Libgdx

java - 如何使用继承的方法在继承层次结构的每个级别显示 SimpleClassName?

Java 正则表达式、匹配模式、词对

java - 将静态文本与数据组合到 ListView 中的最佳方法

java - 例如 Set#add(E) 的 Javadoc 中的 "optional operation"是什么意思?

java - 运行 Selenium GUI 测试后回滚数据库

java - 玩框架,promises,非阻塞线程编程

java - 为什么在类之间传递对象时它会变为空?