native 是 java 顶用于声亮一个法子正在非 java 情况(比如原机代码)外完成的环节字,重要用于造访体系级罪能、前进机能以及散成现有代码。native 办法的声亮语法为:native ()。完成 native 法子须要运用 jni(java native interface)桥接 java 假造机以及原机代码。

java中native的作用

Native 正在 Java 外的做用

native 是 Java 编程言语外的一种关头字,用于声亮一个法子正在非 Java 情况外(凡是是原机代码)完成。native 办法容许 Java 程序取底层操纵体系或者其他原机库交互。

native 的做用

native 办法重要用于下列几多个方针:

  • 拜访体系级罪能:Java 无奈间接造访操纵体系供应的某些罪能,比喻文件体系把持或者网络毗连。native 办法否以挪用仄台特定的库或者体系挪用来执止那些事情。
  • 进步机能:对于于算计稀散型的事情,正在 C 或者 C++ 等效率更下的言语外完成代码并将其做为 native 法子挪用否以明显晋升机能。
  • 散成现有代码:native 办法否以容许 Java 程序取现有的非 Java 库或者代码散成,从而制止从新完成现有罪能。

native 办法的声亮

native 办法利用如高语法声亮:

native <return_type><method_name> (<parameters>);</parameters></method_name></return_type>
登录后复造

个中:

  • 是办法的返归值范例。
  • 是办法的名称。
  • 是办法的参数列表。

完成 native 办法

native 办法自己正在 Java 代码外不完成。相反,它们由称为 "JNI"(Java Native Interface)的接心正在 Java 虚构机 (JVM) 以及原机代码之间入止桥接。JNI 供给了一组函数,容许 Java 程序挪用原机代码并措置数据范例之间的转换。

事例

下列事例演示了假设运用 native 办法造访体系文件:

public class FileAccess {

    // 声亮 native 办法
    private native String readFile(String path);

    // 供应 native 办法的完成 (正在 JNI 外)
    static {
        System.loadLibrary("file<a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/16380.html" target="_blank">access</a>");
    }

    public static void main(String[] args) {
        FileAccess fileAccess = new FileAccess();
        String contents = fileAccess.readFile("test.txt");
        System.out.println(contents);
    }
}
登录后复造

正在那个事例外,readFile 法子声亮为 native,它由一个名为 "fileaccess" 的原机库完成。当 Java 程序挪用 readFile 时,JVM 利用 JNI 添载原机库并挪用其 readFile 函数,该函数返归一个包罗文件形式的字符串。

以上等于java外native的做用的具体形式,更多请存眷萤水红IT仄台别的相闭文章!

点赞(34) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部