есть абстрактный метод
                  
                  
                  abstract class Canine extends Animal {
                  
                  
                      public abstract void eat(); // абстрактный метод не имеет тела
                  
                  
                  }
                  
                  
                  Я хочу его переопределить в конкретном классе Animal конкретного метода DogGo.
                  
                  
                  public void DogGo(){
                  
                  
                      Animal anim = new Animal();
                  
                  
                      anim.c = new Canine() {
                  
                  
                          @Override
                  
                  
                          public void eat() {
                  
                  
                              System.out.print("Eating"); 
                  
                  
                          }
                  
                  
                  В методе main хочу написать слово Eating, но оно не пишется. Как сделать так, чтобы вывести это слово? Вот, что в main:
                  
                  
                  
                  
                  
                      public static void main(String[] args) {
                  
                  
                          Animal anim = new Animal();
                  
                  
                          anim.DogGo();
                  
                  
                          }
                  
                  
                
Ты какой-то трэш делаешь, если честно. Зачем ты в методе класса Animal создаёшь новый экземпляр Animal, и что-то вызываешь у него?
Чтобы обратиться к методу DogGo();
https://javarush.ru/groups/posts/1973-abstraktnihe-klassih-v-java-na-konkretnihkh-primerakh
А точно ли тогда это должно быть методом класса Animal?
Обсуждают сегодня