大神们,求看逻辑啊,这个函数是怎么调用的逻辑和内存分配,并赋值的先后顺序,我是新人,真的被其解说搞晕乎了
求给一个稍微简单易懂的分析和点拨!- class Father
- {
- private int i = 2 ;
- public Father()
- {
- this.fun();//this代表正在初始化的java对象
- }
- public void fun()
- {
- System.out.println(i);
- }
- }
- class Son extends Father
- {
- private int i = 4;
- public Son()
- {
- i = 6; //②
- }
- public void fun()
- {
- System.out.println(i);
- }
- }
- class ExtendsTest
- {
- public static void main(String[] args)
- {
- new Son();//① 结果是 0 ,为什么?
- }
- }
复制代码
!谢谢~~(怎么是0?)代码附下:
|