Genericsとは、C++のテンプレートのような機能で、クラスやインタフェースをパラメータ化するための技術だそうです。Genericsを使うことによって、
などいろいろな効果があるようです。
たとえば
List list = new ArrayList(); list.add(new Integer(10)); String str = (String) list.get(0);
などのエラーは実行時しか検知できませんか、Genericsを使って記述すると
List<Integer> list = new ArrayList<Integer>(); list.add(new Integer(10)); String str = (String) list.get(0); <-コンパイルエラーとなる
となりコンパイルエラーとなります。コンパイル時にエラーとなるので、保守性が向上するわけですね。
さて構文ですが、
List<Integer> list = new ArrayList<Integer>();
などとクラス名<クラス名>という構文になります。http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/util/List.html を見てもわかるとおりJavaDoc?も
インタフェース List<E>
と宣言されています。
この記事は
現在のアクセス:15994