发布网友 发布时间:2022-04-21 15:57
共2个回答
热心网友 时间:2023-10-04 18:01
1. 直接方法调用。java对底层的方法调用被称为native调用,原理就是jni技术。我理解是Java虚拟机加载底层动态库,并记录对java代码提供了哪些底层方法。java代码在需要调用底层方法时,虚拟机查找是否存在对应方法并执行。
2. 间接调用。间接调用是指类似于rpc方式的调用,常见的rpc框架,如grpc,thrift等都支持跨语言调用。
热心网友 时间:2023-10-04 18:01
Java 调用底层接口要通过动态链接库进行,在windows下是dll文件,linux是so文件
Java调用动态库所需要关心的问题:
如何装载文件,以及如何定位所要使用的方法;
数据类型是如何对应的;
如何给使用的方法传递参数;
如何获取返回的值。
目前调用底层接口用的比较多的技术包括jni、jna、jnative、Nativecall等