一、native
凡是带了native关键字的,说明java的作用范围达不到了,它会去调用底层的c语言的库,会进入本地方法栈,调用本地方法接口。也就是JNI。
JNI作用:拓展java的使用,融合同的编程语言为java所用!
因为在java诞生时,那时候C/C++盛行,想要立足,必须要有调用c/c++的程序。
所以在jvm虚拟机中专门开辟了一块空间(本地方法栈)用于登记native方法,在最终执行的时候通过本地方法接口加载本地方法库中的方法。
二、方法区
Method Area方法区
静态变量、常量、类信息(构造方法,接口)、运行时的常量池存放在方法区,但是实例变量存在堆中,和方法区无关。
static,final,Class,常量池。