Java继承 子类的内存模型

Java继承 子类的内存模型

package subClass;
class ParentClass {
    public void fun(){
        System.out.println("ParentClass--->fun()");
    }
}

class SubClass  extends ParentClass{
    int i=100;
    String name=new String("SubClass");
    public void fun(){
        super.fun();
        System.out.println(name+"--->"+i);
    }
}

public class TestExtends {
    public static void main(String args[]){
            SubClass sub=new SubClass();
            sub.fun();
        }
}

Java继承 子类的内存模型

1.super 是父类引用,当jvm加载subClass 时,将父类的引用(super)加载到子类的栈内存中。

2.this是子类的引用,当jvm加载subClass 时,将当前对象的引用(this)存放于自己的栈内存中。

3.具体调用,先查找当前子类的实现,如果没有,就查找父类是否有实现。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/dc259a52a75634d1a1a456d1ae6fe537.html