2013-01-01から1年間の記事一覧
先のエントリは引数の型を制限する話でしたが、今回は引数がパラメータ化された型の場合、その実型引数を制限するのに型変数が使えるという話です。3つのケースを紹介します。 複数の実型引数間の関係を制限 たとえば、A×B (AとBの直積型)を表すクラスPairが…
ジェネリックな設計 基礎編 - プログラマーの脳みそに、メソッドをジェネリックにするべき分かりやすい条件があり、感銘を受けました。 ジェネリックメソッドでの型変数というのはこのようなメソッドに対してInとOutのデータの型の関連性を表現します。 複数…
詳細なコーディング規約として愛用している、Javaセキュアコーディングスタンダードの訳がおかしいのでメモ。 OBJ03-J. ジェネリックな未加工型とジェネリックでない未加工型を新規コードに混在させない http://www.jpcert.or.jp/java-rules/obj03-j.html ジ…
概要 C とC は同じ。(Cの場合) D とD は同じ。(Dの場合) D とD は同じ。(Dの場合) ただし、3つめはEclipseコンパイラではダメだった。 確認コード 代入変換で確認。 C<A>とC<B>はAとBが等しくないと互いに代入できないはず。 package test; import java.io.Seriali</b></a>…