发新话题
移动帖子 加入精华 加入置顶 加入收藏 关注此帖

(答案)一段关于继承的测试



(答案)一段关于继承的测试

答案:
Target=> 0
Target=> 30
Depend=> 20

说明:
这里面有个问题需要说强调
构造方法会优先于属性初始化,因为构造代表着分配内存之类的基础功能,只有构造好了,其他的才能使用
关键问题在于 第一个为什么是0

Target里面的
public Target()
{
print();
super.print();
i = 40;
}
在第一个print()之前,会优先调用父类的构造器,而父类的构造器里面的print()方法,被override了,实际调用的是子类的方法,可惜,此时子类还没有完成初始化,因为父类的构造器还没有返回呢。 所以其属性全部为默认值。 数字当然就是0啦!
快乐渡过每一天,减肥坚持每一天
编辑 回复 快速回复 TOP

Re:(答案)一段关于继承的测试


请教老大,有没有关于什么内存分配,反正程序执行顺序相关的
不然以后遇到类似的还是不懂
编辑 回复 快速回复 TOP

Re:(答案)一段关于继承的测试

收益贴之一, 这个例子不错,讲的很细致。
================================================
            蓝================法================典
================================================
编辑 回复 快速回复 TOP

Re:(答案)一段关于继承的测试

能不能为我们新手画一下内存分析图呀?这样可能会更理解一些!
编辑 回复 快速回复 TOP
发新话题