JVM(五)本地方法接口
1.JVM(一)JVM与Java体系结构2.JVM(二)类加载器子系统和类加载过程3.JVM(三)运行时数据区概述及线程4.JVM(四)虚拟机栈(二)栈帧结构:动态链接、方法返回地址与附加信息5.JVM(四)虚拟机栈(一)栈帧结构:局部变量表与操作数栈6.JVM(四)虚拟机栈(三)虚拟机栈面试题
7.JVM(五)本地方法接口
8.JVM(六)堆9.JVM(七)方法区10.JVM(八)对象的实例化内存布局与访问定位11.JVM(九)执行引擎12.JVM(十)StringTable13.JVM(十一)垃圾回收概述和垃圾标记阶段的算法14.JVM(十二)垃圾清除阶段算法15.JVM(十三)分代收集、增量收集以及分区算法16.JVM(十四)垃圾回收的一些额外点17.JVM(十五)垃圾回收器概述18.JVM(十六)七种垃圾收集器19.JVM调优(十七)JVM常见调优问题和工具的使用JVM(五)本地方法接口和本地方法栈
1 本地方法
-
一个
Native Method
就是一个Java调用非Java代码的接口。 -
在定义本地方法的时候,不提供实现体
-
标识符
native
能够和除了abstract
的java标识符连用public class NativeTest{ public native void method1() throw Exception; ... } -
作用是融合不同的语言为Java所用
2 本地方法栈
- Java虚拟机栈用于管理Java方法,本地方法栈用于管理本地方法
- 本地方法栈是线程私有的
- 可以被设计成固定或者是可扩展内存大小的(在内存溢出方面和虚拟机栈是一样的)
- 虚拟机栈栈帧在执行过程中如果需要调用本地方法,则由本地方法栈将方法压入登记本地方法,然后执行引擎利用
动态链接
的方式调用加载本地方法库
中的方法 - 当某个线程调用本地方法的时候,就不受虚拟机控制了
- 并不是所有的JVM都支持本地方法;在HotSpot JVM中直接将本地方法栈和虚拟机栈合二为一了

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步