什么是本地方法
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] 举报,一经查实,本站将立刻删除。