Народ, почему у меня код прошёл проверку? В частности, где нужно было проинициализировать имя и возраст, я написал не:
this.weight = X;
this.color = "X";
а просто:
int weight = X;
String color = "X";
В других инициализациях проверку не проходил, а вот именно в инициализации про имя и возраст, прошёл.
thisиспользуется для обращения к полям объекта. Написав в коде метода Вы бы объявили две локальные переменные метода, с именамиweightиcolor, присвоив им какие-то значения. На одноимённые поля объекта это никакого влияния не оказало.