【发布时间】:2012-01-17 10:54:43
【问题描述】:
在Kotlin 中,我们将有可能创建一个“可能需要在调用端扩展类的特征”,例如
class Bar {}
trait T1 : Bar {}
class Foo : Bar, T1, T2, T3 {}
class Wrong : T1, T2 //error: Wrong should extend Bar
我无法想象可以应用这种结构的任何流程。谁能告诉我为什么我们需要它?
【问题讨论】:
-
我建议我们关闭这个问题,特征不再存在,一旦重命名为接口以匹配 Java 8 语义,它们的语义已经发生了显着变化。这可以被认为是无关紧要的,现在对现代 Kotlin 具有误导性。
标签: oop language-agnostic language-design traits kotlin