давая значение из одного класса в расширенный Java

1

Я действительно не знаю, как объяснить себя на этом так больно, просто покажу вам, ребята, что им делать, и что я получил. Мой учитель сказал нам заполнить остальную часть кода, чтобы основная работа работала. Это то, что мне было дано:

public static void main(String args[]) 
{
dog buli=new dog();
cat felix=new cat(); 
cuckoo wallwatch=new cuckoo();
talks(buli);
talks(felix);
talks(wallwatch); }
}

выход должен быть: guau miau cucu

И что ive получил (этот класс животных, где основной тоже):

public abstract class Animals {
public String sound;
Animals (String sound){
    this.sonido = sound;
}
    public void talks(){
    System.out.println(sound);
}

И только собака underclass (dog.java), поскольку три одинаковы:

public class dog extends Animals{

dog (String sound){
    sound = "guau";
}

}

Честно говоря, у меня много проблем с java, с которыми у меня никогда не было с другими языками, я не могу понять что-либо, связанное с классами или объектами. : S Спасибо.

Теги:
class
object
oop

2 ответа

0

В том же классе, который содержит основную функцию, добавьте следующую функцию.

private static void talks(Animals animal) {
    animal.talk();
}

Затем напишите следующие классы. (Обратите внимание, что каждый класс должен находиться в другом файле с именем "class-name.java".... dog.java, Animals.java и т.д.)

Animals.java

public class Animals {
    public String sound;

    Animals(String sound) {
        this.sonido = sound;
    }

    public void talks() {
        System.out.println(sound);
    }
}

dog.java

public class dog extends Animals{

    dog (String sound){
        super(sound);
    }
}

Точно так же остальные..

Удачи

0
public abstract class Animals {
   private String sound;
   public Animal(String sound){
      this.sound = sound;
   }

  public void talks(){
     System.out.println(sound);
  }
}

public class Dog extends Animal {
   public Dog() {
      super("woof");
  }
}

public class Cat extends Animal {
   public Cat() {
      super("meow");
   }
}


public class Main {
     public static void talks(Animal animal) {
        animal.talk();
     }

    public static void main(String[] args) {
        Dog dog= new Dog();
        Cat cat = new Cat();
        talks(dog);
        talks(cat);
   }
} 
  • 0
    я не могу изменить основной
  • 0
    создать класс кошки и кукушки, похожий на Dog. Тогда вы можете повторить основной.
Показать ещё 6 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню