将值从一个类赋予扩展的一个Java

将值从一个类赋予扩展的一个Java,java,class,oop,object,Java,Class,Oop,Object,我真的不知道如何解释我自己,所以我会告诉你们我应该做什么,我得到了什么。 我的老师告诉我们完成剩下的代码,这样主代码就可以工作了。 这是给我的: public static void main(String args[]) { dog buli=new dog(); cat felix=new cat(); cuckoo wallwatch=new cuckoo(); talks(buli); talks(felix); talks(wallwatch); } } 输出应为: 卦 缪 库库

我真的不知道如何解释我自己,所以我会告诉你们我应该做什么,我得到了什么。 我的老师告诉我们完成剩下的代码,这样主代码就可以工作了。 这是给我的:

public static void main(String args[]) 
{
dog buli=new dog();
cat felix=new cat(); 
cuckoo wallwatch=new cuckoo();
talks(buli);
talks(felix);
talks(wallwatch); }
}
输出应为: 卦 缪 库库

我得到了什么(这类动物也是主要的):

而仅仅是狗的下层阶级(dog.java),因为三者是相同的:

public class dog extends Animals{

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

说实话,我在java方面遇到了很多其他语言从未遇到过的问题, 我似乎无法理解与类或对象相关的任何内容s
谢谢。

在包含主函数的同一类中,添加以下函数

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);
   }
} 
private static void talks(Animals animal) {
    animal.talk();
}
然后写下面的课程。(请注意,每个类应位于名为“class name.java”的不同文件中。…dog.javaanives.java等。)

javas.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);
    }
}
其他的也一样


祝你好运

狗=新狗(“漫游者”)dog.talk()无法编辑main我无法修改main创建类似于Dog的cat和buckoo类。然后你可以复制main.im告诉你,如果可以的话,我不能创建任何像dog dog=new dog(“woof”)这样的对象我不会在这里问,虽然thx for answering子类dog和Cat有零参数构造函数,但它们调用它们的父类构造函数传递特定于它们类型的声音(例如dog,Cat),我不能编辑主要内容,这是(我猜)节目的重点,或者可能是我的老师写错了(我怀疑这是因为他喜欢让我们受苦)
public class dog extends Animals{

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