ArrayStoreException

みずしまさんのご指摘より。

サブタイプの配列をスーパータイプの配列に代入できるのは、Javaの設計ミス
とよく言われます。

そういえば、これはエラーになるんだ(ArrayStoreExceptionをスロー)。

Number[] nn = new Integer[3];
nn[0] = 1.0;

今更気づいた。これまで配列型のキャストって何かもやもやしてて、使わかなかったからかな。


メモ
http://java-house.jp/ml/archive/j-h-b/014324.html

contravariance/covariance ruleというのは
...
僕もやはり,致命的な問題ではないものの,あまり好ましくないと
思います。