/**
* native:凡是带了native关键字的,说明java的作用范围达不到了,会去调用底层c语言的库。
* 会进入本地方法栈,调用本地方法的本地接口 JNI
* <p>
* JNI作用:扩展java的使用,融合不同的编程语言为Java所用
* 它在内存区域中专门开辟了一块标记区域:Native Method Stack,登记native方法
* 在最终执行的时候,加载本地方法库中的方法通过JNI
*
* 方法区:方法区是被所有线程共享,所有字段和方法字节码,以及一些特殊方法,如构造函数,
* 接口代码也在此定义,简单说,所有定义的方法的信息都保存在该区域,此区域属于共享区间
*
* 静态变量、常量、类信息(构造方法,接口定义)、运行时的常量池存在方法区中,但是实例变量
* 存在堆内存中,和方法区无关。 static final Class 常量池
*/
public class Native {
private int a;
private String name = "abc";
public static void main(String[] args) {
Native aNative = new Native();
new Thread(() -> {
}, "my thread name").start();
}
private native void start0();//调用底层c语言的库
}
native关键字
最新推荐文章于 2023-02-10 23:55:31 发布