public static String getObjectType(Object o) {
   if(o instanceof Cat){
       return "Кот";
   } else if (o instanceof Tiger){
      return "Кот";
   }else if (o instanceof Lion){
      return "Тигр";}
      else if (o instanceof Bull){
      return "Бык";}
      else if (o instanceof Cow){
      return "Корова";
      }else
    return "Животное";
}
Тигр и лев наследуются от кота, а он от животного. Не понимаю логику