Top / Java / Tiger / Generics

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>

と宣言されています。


この記事は

選択肢 投票
おもしろかった 0  
そうでもない 0  

Top / Java / Tiger / Generics

現在のアクセス:15797


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS