ScalaのGenerics
ジェネリックな型Gen[T]のサブタイプ関係
Gen[+T]として宣言する
このときPとCの関係と同様に
例
code:scala
animals: ListP = List(C@51da6868) にするためにはGen[-T]として宣言する
このときPとCの関係とは逆転して
Scalaの文脈では「非変」と呼ぶことが多いっぽいmrsekut.icon
にするためには普通にGen[T]として宣言する
このときGen[C]とGen[P]の間にはサブタイプ関係はない
例
code:scala
Array[P]とArray[C]は互いに代入できない