8

Java型引数では、厳密にサブタイプのみを意味しますか? またはEでも十分でしょうか?

4

3 に答える 3

7

厳密ではありません。Eで十分でしょう。

于 2010-06-28T22:47:30.360 に答える
6

はい、それぞれ包括的な下限と上限を示しますsuperextends

以下は、 Angelika Langer の Generics FAQからの引用です。

境界付きワイルドカードとは何ですか?

上限のあるワイルドカードは のように見え、? extends Typeのサブタイプであるすべてのタイプのファミリーを表しType、 typeType含まれます。を上限Typeと呼びます。

下限を持つワイルドカードは のように見え? super Type、 のスーパータイプであるすべての型のファミリーを表しType、 typeType含まれます。Type下限と呼ばれます。

于 2010-06-29T07:51:27.680 に答える
1
List<? extends Animal> animalList=new List<Dog>();
List<? extends Animal> animalList=new List<Animal>();

どちらの行もエラーなしでコンパイルされます。リストをパラメーターとして受け取る関数は、リスト内のオブジェクトがタイプ E または E のサブタイプであることを認識します。

于 2010-06-29T05:12:14.943 に答える