Voor de kleuren te bepalen zou ik een protected field toevoegen aan Life:
http://i.imgur.com/QaHsUcZ.png

Dan in Animal bepalen welke kleur hij heeft:
http://i.imgur.com/0erRq8T.png

En dan kan dit de code worden in Simulation.draw:
http://i.imgur.com/AgiMnbk.png

Zodat je geen instanceof checks hoeft te doen. Dan blijft de code beter leesbaar.