目录
程序计数器(Program Counter Register)
本地方法栈(Native Method Stack)
本地方法是线程私有的
本地方法(native method):凡是带了native关键字的,说明java的作用范围达不到,会通过native调用操作系统C语言的库
本地方法区:里面运行带native关键字的本地方法,并由执行引擎(Excutrion Engine)执行。执行引擎最终会调用本地方法库(Native Libraies)执行
目前很少用JNI进行通信,更多的使用Socket、WebService等等
程序计数器(Program Counter Register)
每个线程都有一个程序计数器,是线程私有的,就是一个指针指向方法区中的方法字节码(用来存储指向类似于一条指令的地址,也即将要执行的指令代码),用于执行引擎读取下一条指令。它是一块非常狭小的空间。
方法区(Method Area)
方法区是线程共享的运行时内存区域,它存储了每一个类的结构信息。运行时常量池、字段、方法数据、构造函数和普通方法的字节码内容都存在于方法区中。
注意:
1.常量池里面存放的是,字符串常量、类接口的名字和一些引用的常量
2.实例变量存在堆内存中,和方法区无关