【发布时间】:2021-04-03 07:28:24
【问题描述】:
我正在尝试这个:
class Foo<T> {
var member: T = T()
}
...但是 Kotlin 编译器给了我一个错误:Type parameter T cannot be called as function。
如何默认构造一个泛型成员变量?
【问题讨论】:
-
嗯,是的,除了我的问题要简洁得多...
-
但它仍然是关于同一个主题。你们都想拥有某种类型 T 的默认实例。并且给出的答案是在 kotlin 中这是不可能的。您必须使用可空类型或提供类的实例。
-
不可能,因为 Kotlin 不支持默认类型。
-
暗示
T有一个公共的无参数构造函数,但一般情况下它可能不是真的。
标签: kotlin