短絡評価オプションつけた状態で
if isCat() or isDog()とif (isCat() or isDog())の動作が変わるのって変じゃない?
isCatがTrueのときに前者はisDogを実行しないけど後者は実行してしまう