Примерно как решить понимаю. Что логика алгоритма такова: 2 счетчика, ну и условия, при тру записываем результат в один счетчиак, соответственно при фолс в друой. В конце сравнивам какой счетчик больше и вывод победителя. Сам не решил, подсмотрел решение. И не очень понимаю как стоятся эти условия, if (this.age > anotherCat.age), if (this.weight > anotherCat.weight), if (this.strength > anotherCat.strength). Почему this? Почему через точку оператор доступа после аргумента функции. Ну я примерно понимаю. Но сам бы не составил такие условия. Каким темам стоит уделить время? Что надо почитать, чтобы закрепить материал? И если не сложно можно расписать дословно эту строку if (this.age > anotherCat.age) Почему именно так вызываются переменые котов. и вот тут Cat cat = new Cat(); cat.age = 3; cat.weight = 5; cat.strength = 8; Cat anotherCat = new Cat(); anotherCat.age = 4; anotherCat.weight = 6; anotherCat.strength = 9; System.out.println(cat.fight(anotherCat)); System.out.println(anotherCat.fight(cat)); В методе меин не понятны 2 последние строки. То что создали 2 экземпляра класса. И создали 2х котов, понятно. Через точку получили доступ к имени и массе - понятно. А вот вывод на экран не очень понятен, почему именно так пытаемся достучаться? 7