为了账号安全,请及时绑定邮箱和手机立即绑定

下面是运行结果 为什么结果执行了两次ainimal构造方法 ?

public class Animal {

public int age=10;

public String name;

public void eat() {

System.out.println("动物具有吃东西的能力");

}

public Animal() {

System.out.println("Animal类执行了");

age=20;

}

}


Animal类执行了

animal age:20

Animal类执行了

Dog类执行了

动物具有吃东西的能力


正在回答

3 回答

因为在测试调用时先实例化了父类,然后又实例化了子类,实例化父类时会调用构造方法打印,实例化子类时,又会先实例化父类然后才会实例化子类,所以又会打印一句http://img1.sycdn.imooc.com//59fac2820001298511060475.jpg

0 回复 有任何疑惑可以回复我~
你这个代码写的,谁能看下去  ,补全好吗 ,按格式来啊
0 回复 有任何疑惑可以回复我~

因为继承会先调用父类的构造器,如果你有两个类继承这个父类,就会调用两次

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

下面是运行结果 为什么结果执行了两次ainimal构造方法 ?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信