为什么这个示例不编译,也就是(协、对、内)方差是如何工作的?
class Slot[+T] (var some: T) { // DOES NOT COMPILE // "COVARIANT parameter in CONTRAVARIANT position"}
+T
T
T
T
?
class Slot[+T] (var some: Object){ def get() = { some.asInstanceOf[T] }}
编辑
abstract class _Slot[+T, V <: T] (var some: V) { def getT() = { some }}
Slot
编辑2var
val
class Slot[+T] (val some: T) { }
慕勒3428872
白猪掌柜的
相关分类