public abstract class Enum<E extends Enum<E>>
implements Comparable<E>, Serializable {
// All code goes here
}
上記のコードでは、の型パラメーターに再帰型がバインドされているEnum
理由と、を含む部分に欠落している理由がありますComparable<E>
。言い換えれば、なぜそうではComparable<E>
ないのかComparable<E extends Comparable<E>>