>>404
別におかしくはないだろ

class B : D の関係が有ったとして
配列を参照専用で使う目的なら
B[] out = new D[];
としたいこともあるだろうし、
結果を受け取るために配列を使用するなら
D[] in = new B [];
としたい場合がある。