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

我有一个关于Kotlin构造函数的问题。

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

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

class abc和def之间有什么不同?

第一类没有主构造函数,而第二类有一个。 根据Secondary Constructor的文档,你必须委托给它。

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