ホーム > Java > 第12章-1 ジェネリックス

Java -ジェネリックス-

ジェネリックスとは、クラスやインタフェース、メソッドなどの「型」をパラメータ化することを可能にする機能です。

ジェネリックスの記述方法

ジェネリックスを使用した変数の宣言
コレクション型 < データ型 > 変数名;
ジェネリックスを使用した変数の宣言(パラメータが2つの場合)
コレクション型 < データ型1,データ型2 > 変数名;

ジェネリックスを使用して宣言したコレクション(オブジェクト)を生成する場合は、コンストラクタにも 型パラメータの宣言と記述が必要です。

型パラメータは原則として右辺、左辺で同じデータ型を指定しないとコンパイルエラーになります。
型変換が可能でもサブクラスの型を記述することは、できません。

ジェネリックスを利用して宣言したコレクションの生成 []は省略可能
コレクション型 < データ型 > 変数名 =
      new  コレクション型 < データ型 >(引数1[,引数2…])

ジェネリックスを利用するとJDK1.4以前ではできなかった、格納されたオブジェクトの型をコンパイル時に チェックすることができ、要素を取り出す際にもキャストする必要もないため、安全にコレクションを利用することが できます。これをタイプセーフといいます。

ジェネリックスがコンパイル時にのみ型チェックを行うのに対し、配列を利用すると型が明確になっているため コンパイル時と実行時の両方で型チェックを行うことができ、よりタイプセーフといえます。