2 qq 34707933 qq_34707933 于 2016.09.12 19:27 提问

新手~~~~java子类和父类的构造函数

class Animal
{
Animal()
{
System.out.println("Making an Animal");
}
}
class Hippo extends Animal
{
Hippo()
{
System.out.println("Making a Hippo");
}
}
class TestHippo
{
public static void main(String[] args)
{
System.out.println("Starting...");
Hippo h=new Hippo();
}
}

为啥输出是
Starting...
Making a Hippo
父类的构造函数中的输出语句没有执行
图片说明
图片说明 cl

3个回答

alanjet
alanjet   2016.09.12 19:48

不会吧,我测试了你的代码,能正常输出啊:图片说明

qq_34707933
qq_34707933 真的没有 我把运行结果更新出来了
大约一年之前 回复
yangcheng33
yangcheng33   2016.09.12 19:51

应该是没有重新编译,父类肯定会被打印的,原理是jvm会在子类的构造函数里自动添加super()

yangcheng33
yangcheng33 回复DemonDB0410: 源码确定保存更改了吗,截个图?
大约一年之前 回复
qq_34707933
qq_34707933 这是咋回事啊
大约一年之前 回复
qq_34707933
qq_34707933 真的执行了 你看上面的运行结果
大约一年之前 回复
yangcheng33
yangcheng33 回复DemonDB0410: 我这运行了是有的,你真的已经执行了javac TestHippo.java了?
大约一年之前 回复
qq_34707933
qq_34707933 真的没有 我把运行结果更新出来了
大约一年之前 回复
u013829202
u013829202   Rxr 2016.09.13 09:52

经过测试完全没有问题。都能输出。你仔细看看你的环境变量是不是有没配好的。。

Csdn user default icon
上传中...
上传图片
插入图片