>>649
実はそれも考えてたんだけど、dogとsparrowが別の構造を持つと困る。
たとえば、Sparrowは空を飛べるから「飛行高度」みたいなフィールドが必要になったとき、
Animalに追加すると飛べないdogにも追加されてしまって無駄になる。
それが必要なければ649がきっと一番シンプルだよね