和視頻中相同的代碼為啥我的只顯示“動物具有吃東西的能力”
package project1;
public class Animal {
?public int age;
?public String name;
?public void eat(){
System.out.println("動物具有吃東西的能力");
?}
?public Animal(){
System.out.println("Animal");
?}
}
?
package project1;
public class Dog extends Animal {
public Dog(){
System.out.println("Dog");
}
}
package project1;
public class Initail {
public static void main(String[] args) {
Dog dog= new Dog();
dog.age=10;
dog.name="xiaotian";
dog.eat();
}
}
2016-02-05
只能說你看漏了
2016-02-01
你執(zhí)行的結(jié)果應(yīng)該是
animal
Dog
動物具有吃東西的能力
因為子類創(chuàng)建的對象會先執(zhí)行父類的構(gòu)造方法然后才執(zhí)行自己的構(gòu)造方法,最后再調(diào)用父類的eat()方法輸出“動物具有吃東西的能力”
2016-01-31
因為繼承的父類調(diào)用子類代碼的時候是不能調(diào)用子類獨有的方法的
你只要把你的Dog類中的方法Dog改名成Animal就可以了,這樣就視為子類重寫了父類的方法