微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jvm本地方法接口

什么是本地方法

native method就是一个java接口调用非java代码的接口, 一个native方法是由非java语言实现,在定义native时,可以不用实现体,因为具体实现是在外部实现的。

native可以与其他java标识符连用,但abstract除外

package com.lydon.test;

public class IHaveNatives {

public native void Native1();
private native void Native2();
native static public long Native3();
native void Native4() throws Exception;
}

为什么要使用native

主要有几方面的原因:

  • 需要与java外的环境进行交互:例如操作系统或者某些硬件交互信息。
  • 与操作系统交互:jvm需要依赖于具体的操作系统,而它们往往是c或者c++,汇编等较为底层的语言编写的,通过使用本地方法,我们可以用java实现了jre与底层系统交互,甚至jvm有些部分就是用c写的。另外如果有需要用一些java语言没有封装的操作系统的特性,也需要用到本地方法
  • sun的解释器是用c实现的,所以java不可避免的会跟c打交道

现状

除非是跟硬件有关的应用,否则一般我们开发中不会用到native。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐