Mac下Java的native方法以及JNI调用C语言

本文详细介绍了Java中的native方法及其通过JNI(Java Native Interface)调用C语言的实现过程。首先解释了native方法的概念,然后通过一个步骤清晰的教程展示了如何编写含有native方法的Java类,生成.h头文件,使用C语言实现本地方法,编译生成动态链接库,并最终执行Java程序。在Mac环境下,特别强调了动态链接库的命名规则以及解决jni_md.h找不到的问题。
摘要由CSDN通过智能技术生成

1.native方法

最近在读JDK NIO的源代码的时候发现了很多的native方法,这些方法都只给出了native修饰的定义,并没有给出实现体,并且也没有实现体,形式上和接口很类似。但是这些其实是特定的native方法,那么什么是native方法呢?下面给出以下示例:

//sun.nio.ch;包里面的IOUtil工具类下面有一些native方法
static native boolean randomBytes(byte[] var0);

    static native long makePipe(boolean var0);

    static native boolean drain(int var0) throws IOException;

    static native void configureBlocking(FileDescriptor var0, boolean var1) throws IOException;

    static native int fdVal(FileDescriptor var0);

    static native void setfdVal(FileDescriptor var0, int var1);

    static native int iovMax();

    static 
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值