Привеееет! Короче, задача та же
У меня в коде: абстрактный класс SomeZooWeight – это класс с одноименным абстрактным методом, который ну объявляет, что каждая тварь сколько-нибудь весит.
Beast – это все животные. От этого класса наследуются все существа. Здесь переопределяется метод SomeZooWeight(), еще здесь метод getWeight(), который возвращает вес, а еще здесь методы voice() и compareTo(), которые работают с данным весом. Здесь формула : изначально все животные весят до грамма.
Vertebrata – это позвоночные, которые наследуются от Beast. Здесь переопределяется метод SomeZooWeight(), еще здесь метод getWeight(), который возвращает вес, а еще здесь методы voice() и compareTo(), которые работают с данным весом. Здесь формула : все позвоночные весят хотя бы 1000 гр.
Byrd – это птички, которые наследуются от Vertebrata. Здесь переопределяется метод SomeZooWeight(), еще здесь метод getWeight(), который возвращает вес, а еще здесь методы voice() и compareTo(), которые работают с данным весом. Здесь формула : все позвоночные, которые еще и птицы, весят до 100 гр.
Не могу прислать код какого-н. животного, так что см. скрин. Ну я просто переопределяю voice() и compareTo(), а также внутрь getWeight(). Метод SomeZooWeight() я уже не переписываю (это плохо?).
Вопросы:
1) Проблема в том, что когда я пытаюсь переопределить метод SomeZooWeight(), я еще и переопределяю getWeight(). Но мне, получается, лучше так не делать, а просто создать ну новый метод, который бы возвращал вес птички или позвоночного, да? Если да, то как потом эти три веса в компараторе задействовать?