1/24

Java silverの13章の68問目が、回答を読んでもわかりません。。。なぜ Eは誤りなのでしょうか?よろしければ解説をお願いします。

オーバーロードとして扱われるBに対して、選択肢Eはオーバーライドとして扱われます。しかし、戻り値型が異なるためオーバーライドが成り立たないことになります。オーバーライドするときには戻り値型が同じか、サブクラス型でなければいけませんが、List<Number>とList<Integer>は、Number型だけを扱うList型と、Integer型だけを扱うList型という意味になり、この2つに継承関係にはありません。あまりたとえ話をするのは好きではありませんが、家電だけを扱う店員さん(電気屋さん)と、魚介類だけを扱う店員さん(魚屋さん)に継承関係がないのと同じです。

スポンサーリンク

志賀澄人@Java黒本の著者さんになんでも質問しよう!

質問

スタンプ

利用できるスタンプはありません。

スポンサーリンク

質問する

過去に答えた質問

4/4

Googleポリシー違反コンテンツが含まれている可能性があるため非表示になっています。[表示設定を開く]

4/4

Googleポリシー違反コンテンツが含まれている可能性があるため非表示になっています。[表示設定を開く]

スポンサーリンク