Java Gold合格への道 ~ジェネリック・クラス~
スポンサーリンク
こんにちは。たろすです。
今回はジェネリック・クラスについて説明します。
ジェネリック・クラスの決まり
ジェネリック・クラスには以下のコードを記述することができません。
// 型変数によるインスタンス生成 T obj = new T();
// 型変数を要素に指定する配列の生成 T[] array = new T[3];
// static修飾子付きの型変数 static T t;
// 型変数に対する.classの参照 void doIt() { Class<T> class = T.class; }
// instanceof演算子による型の判定 void doIt(T t) { if (t instanceof T) {} }
ジェネリック・クラスの使いどころ
public class X<T> { private T t; public void set(T t) { this.t = t; } public T get() { return t; } }
このクラスは任意の型の変数を1つだけ格納し、get()で取得することができます。
例えば以下のようなクラスの場合String型しか格納できませんが、上記のジェネリック・クラスではInteger型でも自作クラスでもなんでも格納できます。
public class Y { private String s; public void set(String s) { this.s = s; } public String get() { return s; } }