Если у меня есть класс «Собака», который расширяет класс «Животные», а класс «Животное» имеет конструктор с несколькими атрибутами типа latinName, latinFamily и т. Д. Как мне создать конструктор для собаки? Должен ли я включать все атрибуты, которые содержатся в животных, а также все дополнительные атрибуты, которые я хочу в Собаке, как так:Конструктор подкласса с дополнительными атрибутами
public Animal(String latinName){
this.latinName = latinName;
}
public Dog(String latinName, breed){
super(latinName);
this.breed = breed;
}
Фактические классы имеют гораздо больше атрибутов, чем я перечислил здесь, для этого конструктор для собаки становится довольно длинным, и я сомневаюсь, что это был путь, или если есть более аккуратный способ?
Да, это способ продолжения. Вы можете инкапсулировать параметры на карте или в класс обертки для удобства чтения, если хотите. –
Вы правы, включите все атрибуты, найденные в Animal, и все дополнительные атрибуты, которые вы хотите в классе Dog. Просто исправьте свой код с типом данных в параметрах. как 'public Dog (String latinName, порожденная DataTypeOfBreed)' –