2 认识java虚拟机的基本结构
类加载子系统负责从文件系统或者网络中加载Class信息,加载的类信息存放于一块称为方法区的内存空间。除了类信息外,方法区还会存放运行时常量池信息,包括字符串字面量和数值常量。
java堆在虚拟机启动时建立,它是java程序中最主要的内存工作区域。几乎所有的java对象实例都存放在java堆中。堆空间是所有线程共享的。
每一个java虚拟机线程都有一个私有的java栈。一个线程的java栈在线程被创建的时候被创建。java栈中保存着帧信息。
PC寄存器也是每个线程的私有的空间,java虚拟机会为每一个java线程创建PC寄存器。在任意时刻,一个java线程中总是在执行一个方法,这个被正在执行的方法称为当前方法。如果当前方法不是本地方法,PC寄存器就会指向当前正在被执行的指令。
设置java虚拟机参数
java [-opitions] class [args]
示例
java -Xmx32m geym.zbase.ch2.SimpleArgs a // 设置系统最大可用堆空间为32m
函数如何调用
在java栈中主要保存的内容就为栈帧。每一次函数调用ÿ