概要
Java ジェネリックは、特定の型のオブジェクトを保持できる型安全なコレクションを作成するためのメカニズム。この記事では、List インターフェイスの 3 つのバリエーション、List、List
違いを理解する
1. List (Raw Type)
List は、List インターフェイスの Raw 型です。型引数を指定しません。つまり、任意の型のオブジェクトを保持できます。ただし、生の型は潜在的な型の安全性の問題を引き起こすため、一般に推奨されません。
2.リスト<オブジェクト> (パラメータ化された型)
List
3.リスト> (ワイルドカード型)
リスト>は、未知の型のリストを示すワイルドカード型です。任意のタイプのオブジェクトを保持できますが、リストに新しいオブジェクトを追加するために使用することはできません。ワイルドカード型は主に、メソッドが任意の型のリストを受け入れることができることを示すパラメータ型として使用されます。
各型を使用する場合
1. List (Raw Type)
2.リスト<オブジェクト> (パラメータ化された型)
3 。リスト> (ワイルドカード型)
メソッド シグネチャの例
1. CanYouGiveMeAnAnswer(List l)
List はすべてのリスト タイプのスーパークラスであるため、このメソッドは生のリストやパラメーター化されたリストを含むあらゆるタイプのリストを受け入れることができます。
2 。 CanYouGiveMeAnAnswer(List
このメソッドは、Object 型のパラメーター化されたリストのみを受け入れることができます。生のリストや他のタイプのリストは受け入れられません。
3. CanYouGiveMeAnAnswer(リスト> l)
このメソッドは、生のリストやパラメーター化されたリストを含むあらゆるタイプのリストを受け入れることができますが、新しいオブジェクトをリストに追加することはできません。
以上がJava ジェネリックス: `List`、`List`、および `List` の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。