Ничего не понятно, совсем. Зачем мы сравниваем this и anotherCat параметры, почему не создаем объекты и не сравниваем их указанные параметры.что за пустой метод public Cat() {}. как работает эта часть cat1.fight(cat2); что за конструктор без параметров? Повторюсь, не понятно ничего... можно вместо ответов ссылки на любые ресурсы по этим темам. Очень уже хочется разобраться