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>>
爲什麼Enum聲明中的類型參數包含遞歸類型邊界?
「換句話說,爲什麼...不是可比<延伸可比>」,因爲這不是有效的Java語法 –
newacct
2013-02-28 18:44:43
@newacct如果'枚舉>'是有效的Java語法,爲什麼不'可比較>'?.我已經編輯了這個問題btw?你是說因爲我已經刪除了額外的'<'''附近的'E'而無效嗎? –
Geek
2013-02-28 18:52:27
編號類型參數的邊界只能在聲明類型參數的地方指定。對於泛型類,類型參數在類聲明中的類名稱後面聲明,例如,在類'Enum>'中。對於泛型方法,類型參數在返回類型之前聲明。其他任何地方,包括在你的例子中指定超類或接口,你只是使用類型參數;你不能指定邊界。 –
newacct
2013-02-28 18:58:13