追記。
いったんObject型にしちゃうのは、JavaでいうVectorみたいな
可変長配列に入れてるためです。
templateにしてないのはプリミティブ型を入れたくないから。

まぁ元がJavaからの移植なのでできるだけJavaのコーディングを
真似したいということです。