|
|
1
0
快速回答,使用“out”修饰符:
长答案: 你正在寻找的是方差,你可以在kotlin的官方文档中读到它: https://kotlinlang.org/docs/reference/generics.html 因为例如List接口看起来像这样:
你可以这样做:
但不可能做到:
因为MutableList没有“out”修饰符。这是有道理的,因为MutableList是可以更改的,例如,您可以将其添加为MutableList,但它已经指向List。 在您的示例中,如果且仅当DataTableListener不使用泛型类型作为输入时,您可以使用“out”修饰符。例如:
使用上述接口,您仍然可以在函数中使用“out”修饰符,但您将无法执行“assignValue”函数。 整个示例:
|
|
|
A. Cedano · 如何在UIState中包含错误案例? 1 年前 |
|
Murilo · Jetpack编写导航栏项目图标 1 年前 |
|
zplot · 使用具有抽象嵌套类的泛型时类型不匹配 1 年前 |