開発者の備忘

「起」と「結」しか書かないので詳細はご自分でお調べください

【Java】ジェネリクス:型引数

概要

型引数とは、型変数に対して利用する型を割り当てる型のこと。


例えば、以下のようなジェネリクスが明示された変数がある。

Foo<T> f1;


上記の「T」が型変数である。


この時点では、どの型を使用するか明示されていない。


そのため、型引数を設定して明示してあげる必要がある。

Foo<String> f1;


これで、FooクラスはString型のみ使用できるように明示された。


この、「T」に対して設定している型を型引数という。


誰に対して明示しているかというと、コンパイラに対して。


ちなみに、型引数は参照型でなければならない。

以下のようなプリミティブ型は設定できない。

Foo<int> f2;
Foo<long> f3;
Foo<double> f4;


きちんと、参照型を設定しよう。

Foo<Integer> f2;
Foo<Long> f3;
Foo<Double> f4;