Kotlin构造函数(主要构造函数)

时间:2017-12-26 13:03:42

标签: kotlin

我对Kotlin构造函数有疑问。

class abc {
    constructor(a: Int)
    constructor(a: Int, e: Int)
}

class def(a: Int) {
    constructor(a: Int, e: Int) : this(a)
}

为什么我需要在def类中调用this(a)?

class abc和def ??

之间有什么不同

1 个答案:

答案 0 :(得分:5)

第一个类没有主构造函数,而第二个类没有。根据{{​​3}},您必须委托给它。

  

如果类具有主构造函数,则每个辅助构造函数需要直接或间接通过另一个辅助构造函数委托给主构造函数。使用this关键字:

完成对同一类的另一个构造函数的委派