我正在解决java旅程中的多态问题,我正在Eclipse中尝试这些示例代码。我只是复制了代码,但我真的想知道为什么我的代码不能编译。
所以我有三个文件:Example.java,Animals.java和Dog.java。
Example.java包含主要方法:
public class Example {
public static void main(String[] args) {
Animal myDog = new Dog();
}
}
然后我为Animal和Dog创建了另外两个类,如下所示
动物类
public class Animal {
public void makeNoise() {
}
public void eat(){
}
public void sleep() {
}
public void roam() {
}
}
狗类
public class Dog {
}
我理解它的方式是我可以使Dog成为扩展超类Animal的子类。但为什么我的代码不能编译?
我错过了这些代码中的内容吗?
答案 0 :(得分:3)
你的狗类不会扩展动物类,所以这是无效的:
Animal myDog = new Dog();
你需要修改Dog类才能继承Animal Class
你实现了这一目标:
public class Dog extends Animal{