亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在語法上正確地實現 type<K extends Comparable<K>, V> 的接口?

如何在語法上正確地實現 type<K extends Comparable<K>, V> 的接口?

手掌心 2021-12-10 15:36:10
K 和 V 保證是字符串或整數。我已經多次使用泛型,但從未使用過<K extends Comparable<K>, V>,所以我現在很掙扎。
查看完整描述

1 回答

?
呼喚遠方

TA貢獻1856條經驗 獲得超11個贊

當你實現一個泛型接口時,你應該總是指定類型參數。您可以不指定它們而逃脫,但是您正在使用原始類型,而您不應該使用原始類型。


當你做指定它們,你還需要一個有效的方式來指定。


第一個選項是錯誤的,原因有兩個:


當你指定類型參數時,你永遠不會重寫那個參數的邊界,所以寫K extends Comparable<K>是錯誤的

K并且V沒有在任何地方定義。

第二個選項是錯誤的,因為您重寫了K. 在第一選擇此選項的不同K和V 在這里定義-K并且V是的類型參數Son。


第三個選項編譯,但它使用原始類型,這首先違背了使用泛型的目的。


理想情況下,您會編寫如下內容:


class Son<K extends Comparable<K>, V> implements Father<K, V> {


}

注意:我怎么沒改寫界限,定義K和V作為類型參數Son。


或者,指定一個具體類型:


class Son implements Father<String, Integer> {


}


查看完整回答
反對 回復 2021-12-10
  • 1 回答
  • 0 關注
  • 261 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號