JVM字节码执行引擎 运行时栈帧结构 局部变量表 操作数栈 动态连接 方法返回地址 附加信息 方法调用 解析 分派 –“重载”和“重写”的实现 静态分派 动态分派 单分派和多分派 JVM动态分派的实现 基于栈的字节码解释执行引擎 基于栈的指令集与基于寄存器的指令集 JVM字节码执行引擎 虚拟机是相对
分类:
其他好文 时间:
2016-02-26 17:05:23
阅读次数:
168
http://www.ticmy.com/?p=43重点:局部变量表 和 操作数栈的执行过程。使用javac编译后再使用javap -c Test反编译这个类查看它的字节码,如下(只摘取main方法):public static void main(java.lang.String[]);Code:...
分类:
编程语言 时间:
2015-09-10 00:22:37
阅读次数:
227
java棧和函数调用的关系图【名词解释】--->java棧是一块线程的私有空间--->java的棧是先进后出的数据结构。函数返回,则该函数的棧帧被弹出。--->一个函数对应一个棧帧,一个棧帧里包含局部变量表,操作数棧,棧数据区【行为解释】--->每次函数调用都会生成相应的棧帧,从而占用一定的棧空间,...
分类:
编程语言 时间:
2015-08-16 19:42:15
阅读次数:
146
ASP.NET WEBFORMAspxaspx文件(新建项→Web窗体) 。在aspx中可以使用的方式在页面的当前位置输出表达式(表达式至少要用protected级别,后面会讲为什么,如果自动提示出不来,则重新生成项目)或者局部变量,表达式也可以是一个方法、属性、字段。不要忘了写=。这个文件可以几乎...
分类:
Web程序 时间:
2015-08-11 17:43:41
阅读次数:
246
final——final用于类表示该类不能派生子类。
final用于方法表示该方法不能被子类重写。
final用于变量时表示常量,类似于C/C++的const关键字。
final用于成员变量表示该成员变量为常量,不能被修改,必须在变量定义时赋值。
final用于局部变量表示该局部变量为常量,不能被修改,可以在变量定义时赋值,也可以先定义变量后赋值。static——static用于成员变量表示...
分类:
编程语言 时间:
2015-08-01 15:47:56
阅读次数:
107
方法区永久代,共享。类信息,常量,static变量,JIT编译后的代码。运行时常量池:字面量,符号引用。堆所有对象(新生代,老年代)虚拟机栈线程私有。表示方法执行的内存模型。【局部变量表】本地方法栈程序计数器字节码行号。线程私有。【Objectobj=newObject();】——Objectobj...
分类:
其他好文 时间:
2015-07-08 22:13:07
阅读次数:
138
1、堆:所有对象实例存放地,垃圾管理的主要对象,被所有java线程所共享2、栈:线程私有、存储局部变量表、操作栈、动态链接、方法出口3、方法区:线程共享的内存区域、存储类信息、常是、静态变量、即时编译器编译后的代码3、本地方法框:为虚拟机使用到的Native方法服务4、程序计数器:线程私有、指向下一...
分类:
其他好文 时间:
2015-06-10 18:54:01
阅读次数:
160
JVM管理的内存
程序计数器(PC):每条线程都有独立的PC
JVM栈(Java栈):描述的是Java方法执行的内存模型,每个方法被执行的时候会创建一个栈帧用于存储局部变量表、操作栈、动态链接、方法出口等信息,也是线程私有的。
本地方法栈:与Native方法相关
Java堆:线程共享的内存地址空间,用于存放对象实例,也是GC管理的主要区域。
直接内存:与Native堆相关
方法区:存储已被JVM加载...
分类:
编程语言 时间:
2015-06-01 14:49:10
阅读次数:
212
java堆用于存放对象示例,与数据相关,java栈主要与线程的函数调用相关
函数调用一次出入java栈一次,调用的时候入栈,调用结束(return或者throw)出栈,函数参数和函数局部 变量保存在栈帧中,所以函数调用结束之后栈帧被弹出,相应的局部变量也就失效了。
函数参数和局部变量越多,需要栈帧中保存的局部变量表就越大,函数调用的层次就会越少。
局部变量是垃圾回收的很重要的根节点,任何被局部变量...
分类:
编程语言 时间:
2015-05-27 14:05:49
阅读次数:
184
引言 这一章讲的是Java虚拟机的内存区域可以分为几个部分,书中讲到可以分为五个部分:分别是堆、栈、程序计数器、方法区、本地方法栈 其中堆里存放了对象的实例 而常说的基本数据类型,以及对象的引用就是存放在栈中的,其实更确切的说是存放在虚拟机栈的局部变量表中,虚拟机栈除了局部变量表之外,还担任了描述的...
分类:
编程语言 时间:
2015-05-10 16:57:22
阅读次数:
207