欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java 栈帧,

来源: javaer 分享于  点击 47172 次 点评:2

Java 栈帧,


结构:
1. 局部变量表:一组变量值的存储空间,用于存放方法参数和方法内的局部变量,编译完成后大小确定,最基本的单位slot,而且slot可以进行重用,一旦某个变量超出其存在的域,其他变量可重用其内存
2. 操作数栈:操作栈(运算),局部变量表(存储)
3. 动态链接:
4. 方法返回地址:正常返回或者异常返回
5. 额外附加信息;

方法调用

方法调用不等于方法执行

静态解析(编译时确定):static,final,private,构造函数,父类函数
动态绑定(运行时确定):public

方法表

虚方法表存放着哥哥方法的实际入口:
如果方法没有被重写,入口地址和父类方法的入口地址一致
否则,子类方法入口地址指向子类方法

分派

静态分派(重载,类内方法)
动态分派(重写,父子类方法)

单分派:只能调用本类的方法
多分派:可调用本类和父类的方法

Java属于静态多分派,动态单分派
重载能调用父类和子类的方法,重写只能调用子类的方法

相关文章

    暂无相关文章
相关栏目:

用户点评