Generics はすでに雑誌などで解説記事が書かれているのでご存知のかたも多いかと思います。 Generics というのは C++ のテンプレート機能のような機能で、ひとことでいえばクラス (インタフェース)、メソッドのパラメータ化ということができます。 といってもよく分からないですね。 それでは実際に例を示しましょう。 コレクションは要素を Object クラスのオブジェクトとして保持するために、使うときにはいちいちキャストを行わなくてはいけません。 List list = new ArrayList(); list.add(new Integer(10)); int x = ((Integer)list.get(0)).intValue(); // キャストが必要