まあテンプレート使えば解決するのはわかってるんだけども
Foo[] array = new Foo[n]; の代わりが Foo[] array = GenArray<Foo>(n); とかになるといかにもダサいし
それを10万回ぐら書いた後で言語組み込みかクラスライブラリにそれっぽいものが定義されてるのを知ったりしたら
自殺すると思う