Здравствуйте! Ошибка в конце кода а точнее в двух местах: list.add(a); list.add(c); В классе MyAnimalList имеется метод add! Но в классе AnimalTestDrive предлагается либо создать уже созданный метод add иначе ругается - " Dog(Cat) can not be converted to Anmal" Почему игнорируется мой метод add?
public class MyAnimalList {
private Animal[] animals = new Animal[5];
private int nextIndex = 0;
public void add(Animal a) {
if (nextIndex < animals.length) {
animals[nextIndex] = a;
System.out.println("Animal добавляем в ячейку " + nextIndex);
nextIndex++;
}
}
}
public class AnimalTestDrive {
public static void main(String[] args) {
MyAnimalList list = new MyAnimalList();
Dog a = new Dog();
Cat c = new Cat();
list.add(a);
list.add(c);
}
}
public class Dog extends Animal {
...
}
public class Cat extends Animal {
...
}
Суть проблемы в том, что Ваши Dog
и Cat
не являются Animal
. Если Вы унаследуете эти классы от Animal
, то объекты этих типов можно будет использовать в коде, который ожидает тип Animal
.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Всем приветПри работе с итератором в Apache POI получаются только те ячейки в строке, которые не равны null
Объясните мне пожалуйста,почему когда я работаю с итератором и забываю проинициализировать сам итератор, то такой цикл будет продолжаться...
вопрос как можно получить количество ссылок на экземпляр объекта или хотя бы больше 1 ли их
Думаю над архитектурой сервера для игры и встал вопрос над тем, как обрабатывать подключения клиентовПротокол - tcp/ip