subtypeとの関係についてはある程度理解していsubclassますが、それが正しいかどうかはわかりません。
具体的なクラス (ジェネリック/高次クラスではない)
Java や Scala で具体的なクラスや型を宣言するとします。
class B
class A extends B
classAが class のサブクラスである場合B、 typeは type ?Aのサブタイプでなければなりません。B
また、 typeAが type のサブタイプの場合B、 classAは class のサブクラスB? A(とBが両方のクラスであると仮定)
しかし、それらは具象クラスまたは型である場合にのみ真です
高次のクラス/型
しかし、高次の型の場合、これは当てはまりませんよね? 言う:
class A[+T]
次に、 typeA[String]は type のサブタイプですA[Object]がA[String]、 のサブクラスではありませんA[Object]よね?