栈桢与操作数栈以及符号引用与直接引用的转换

1、栈桢(stack frame)
栈桢是一种用于帮助虚拟机执行方法调用与方法执行的数据结构。
栈桢本身是一种数据结构,封装了方法的局部变量表、动态链接信息,方法的返回地址以及操作数栈等信息

2、符号引用,直接引用
有些符号引用是在类加载阶段或是第一次使用时就会转换为直接引用,这种转换叫做静态解析;
另外一些符号引用则是在每次运行期转换为直接引用,这种转换叫动态链接,这提现为Java的多态

如下面的伪代码

    Animal a = new Cat();
    a.sleep();
    a = new Dog();
     a.sleep();
    a = new Tiger();
     a.sleep();

  Animal是父类,其它Cat,Dog,Tiger是子类。在编译期是不知道a指向那个实例,在运行期才知道具体指向Cat,还是Dog,还是Tiger

猜你喜欢

转载自www.cnblogs.com/linlf03/p/11107787.html