Tag: 番石榴

在Kotlin中,如何委托给一个接口并只提供一个无参的公共构造函数?

问题在于Kotlin 类委托只允许委托给构造函数参数,因此似乎迫使你为构造函数提供一个参数。 以下是我有关这个问题的具体使用情况的原始问题。 我想要做到以下几点: val myTable1: MyTable = MyTable() 哪里 MyTableinheritance自ImmutableTable ( src )或至少Table 而且我不必手动将所有的Table方法委托给一些基础实现。 我也想避免以下几点: val myTable2: MyTable = MyTable.build() 即我不想被迫使用伴侣对象/静态工厂方法。 我试图扩展ImmutableTable ,但我越来越This type has a constructor, and thus must be initialized here 。 我试图扩展Table接口并委托给它(以避免重新实现方法),但是我不得不提供一个Table的实例作为构造参数。 我不能在init {}块中初始化它。 请看我的确切的企图这个要点 。 使用Kotlin版本: 1.0.2