2007-06-20から1日間の記事一覧

ArrayStoreException

みずしまさんのご指摘より。 サブタイプの配列をスーパータイプの配列に代入できるのは、Javaの設計ミス とよく言われます。 そういえば、これはエラーになるんだ(ArrayStoreExceptionをスロー)。 Number[] nn = new Integer[3]; nn[0] = 1.0;今更気づいた。…

境界ワイルドカード

http://wisdom.sakura.ne.jp/programming/java/java5_3.html Saisseさんに教えていただきました。上の問題(というか無知)を解決する書き方↓ List<Integer> nn = new ArrayList<Integer>(); List nn2 = nn;オーバーライドする場合の例 class X{ List hoge(){ return null; } } c</integer></integer>…

ジェネリックスのサブクラスが代入できない問題

サブクラスはスーパークラスに代入できる(サブタイプはスーパータイプに代入できる) Integer n = new Integer(); Number n2 = n; サブクラスの配列はスーパークラスの配列に代入できる Integer nn = new Integer{}; Number[] nn2 = nn; しかし サブクラスの…