`
李楚男
  • 浏览: 117873 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JNI的学习之旅(一)

 
阅读更多

1、基本数据类型

     JNI定义了一系列基本数据类型和引用数据类型与java相对应。

    

Java Language Type Native Type Description
boolean jboolean

unsigned 8 bits

byte jbyte signed 8 bits
short jchar unsigned 16 bits
int jint signed 32 bits
long jlong signed 64 bits
float jfloat 32 bits
double jdouble 64 bits
     

观察能够发现,JNI基本数据类型只是比Java基本数据类型前多了个'j'而已。

 

2、引用数据类型

jobject                                                                     (all objects)

           jclass                                                            (java.lang.Class instances)

           jstring                                                           (java.lang.String instances)

           jarray                                                            (arrays)

                    jobjectArray                                         (object[])

                    jbooleanArray                                      (boolean[])

                    jcharArray                                            (char[])

                    jshortArray                                           (short[])

                    jintArray                                               (int[])

                    jlongArray                                             (long[])

                    jfloatArray                                             (float[])

                    jdoubleArray                                          (double[])

            jthrowable                                                     java.lang.throwable

 

       跟java一样,jobject是所有引用类型的父亲。看看是不是很容易理解?呵呵,关于jthrowable,JNI也是有线程概念的。

3、 The jvalue Type

Jvalue 是基本数据类型和引用数据类型的集合,它的定义如下:

typedef  union jvalue{

         jboolean  z;

        jbyte         b;

        jchar         c;

        jshort        s;

        jint            i;

        jlong         j;

        jfloat        f;

        jdouble     d;

        jobject      l;

)jvalue;

 

 

 

分享到:
评论

相关推荐

    基于 Android NDK 的学习之旅-----JNI LOG 打印

    总结起来,这个“基于Android NDK的学习之旅”将带你深入理解JNI的LOG打印,这是一项实用的技能,对于进行Android的原生开发和调试至关重要。通过实践和学习,你可以熟练掌握这一技术,从而提升你的Android开发能力...

    adt-bundle JNI NDK 初学者实例

    通过`adt-bundle`,你可以快速地设置好开发环境,开始你的Android编程之旅。 接着,我们谈谈JNI。JNI是一种Java平台的标准接口,它允许Java代码和其他语言编写的代码进行交互。在Android中,JNI常用于实现高性能的...

    NDK编程JNI基本操作编程入门教案

    在Android开发领域,NDK(Native Development Kit)是一个不可或缺的工具,它允许开发者使用C、C++等原生代码来编写部分应用,从而提升性能、优化计算密集型任务或者利用硬件加速功能...祝你在NDK编程之旅上一切顺利!

    Android NDK 的学习之旅 - 数据传输

    在Android开发中,NDK(Native Development Kit)是一个重要的组件,它允许开发者使用C和C++原生代码来编写部分应用程序,从而实现高性能计算和低级硬件交互。本篇文章将聚焦于Android NDK在数据传输方面的应用,...

    ndk_launcher.zip学习

    【标题】"ndk_launcher.zip学习"涉及到的核心知识点是Android Native Development Kit (NDK)的使用,特别是关于创建和配置一个原生应用启动器的过程。...这是一次全面而深入的Android NDK开发之旅。

    林信良的“Java学习笔记”ppt

    **Java学习笔记——由林信良带来的编程之旅** 在编程世界中,Java是一种广泛应用的、面向对象的编程语言,以其跨平台的特性、强大的功能和易读性深受开发者喜爱。林信良的“Java学习笔记”PPT为初学者提供了一个...

    毕向东_Java 25天基础源代码

    在Java的25天学习之旅中,你可以期待涵盖以下关键知识点: 1. **Java环境搭建**:首先,你需要了解如何安装JDK(Java Development Kit),设置环境变量,并通过`javac`和`java`命令进行编译和运行程序。 2. **基本...

    21天java学习PPT

    在“21天Java学习PPT”中,你将踏上一段深入学习Java编程语言的旅程。这个资源旨在帮助初学者在短短21天内建立起坚实的...记得理论与实践相结合,通过编写代码来加深理解和记忆,祝你在Java学习之旅上取得丰硕成果!

    Java的开发,很适合初学者学习

    **:每个编程之旅都始于打印"Hello, World!"。在Java中,这涉及创建一个公共类(public class)并定义一个主方法(main method)。 4. **控制结构**:学习如何使用if语句进行条件判断,for和while循环执行重复任务...

    androidndk环境搭建和入门教程

    本教程将指导你如何搭建Android NDK环境,并通过简单的入门实例开始你的NDK开发之旅。 首先,我们来看“Android NDK开发环境搭建”。在Windows系统上,你需要下载适合你操作系统的NDK版本,通常可以从Android开发者...

    良葛格java jdk 5.0学习笔

    Java JDK 5.0是Java开发工具包的一个重要版本,对于初学者来说,它是进入Java编程世界的敲门砖。...这将为你的Java开发之旅打下坚实的基础。在实践中不断巩固这些知识,你将能够熟练地编写出高效、健壮的Java程序。

    kfc123百度手写输入法源码 -源码.zip

    总之,百度手写输入法的源码是一个丰富的学习资源,对于任何对输入法技术、图像处理、数据结构和算法感兴趣的开发者来说,都是一次宝贵的探索之旅。让我们带着好奇心和热情,深入到源码的世界,开启我们的学习旅程吧...

    VoiceChange:Android NDK开发之旅25--NDK--模仿QQ变声特效

    本项目"VoiceChange: Android NDK开发之旅25--NDK--模仿QQ变声特效"旨在通过NDK技术来实现类似QQ应用中的语音变声功能,为用户带来丰富的娱乐体验。 首先,我们需要理解变声特效的基本原理。声音是由不同频率的声波...

    JAVA超级游戏编程 电子书

    总而言之,《JAVA超级游戏编程》是一本全面且深入的教程,旨在帮助开发者掌握JAVA在游戏开发中的应用,无论你是初学者还是有经验的程序员,都能从中获得宝贵的知识和技巧,开启你的JAVA游戏编程之旅。

    JAVA语言入门资料

    【JAVA语言入门资料】 在IT领域,JAVA语言作为一款广泛应用的编程语言,是许多初学者的...总之,这份“JAVA语言入门资料”是全面了解和学习JAVA的好起点,通过阅读和实践,初学者可以逐步掌握JAVA编程,踏上编程之旅。

    mokoid源码

    《mokoid源码解析:探索Android驱动程序开发的初步之旅》 在移动设备的世界里,Android操作系统以其开源和灵活性赢得了广大开发者的心。而在Android系统中,驱动程序扮演着至关重要的角色,它们是硬件与软件之间的...

    opencv_java342.zip

    《OpenCV for iOS:在移动平台上开启计算机视觉之旅》 OpenCV(开源计算机视觉库)是全球最广泛使用的计算机视觉库之一,它包含了各种用于图像处理、计算机视觉以及机器学习的算法。在这个“opencv_java342.zip”...

    java 3D 探奇

    《Java 3D 探奇》不仅是一次技术之旅,更是开启三维编程世界的钥匙。对于希望掌握三维图形编程的Java开发者来说,这份教程是不可或缺的资源。通过深入理解Java 3D的特性和应用场景,开发者可以轻松构建出既美观又...

    搭建Android开发环境_C

    通过以上步骤,你就成功地建立了一个支持C语言编程的Android开发环境,可以开始你的Android应用开发之旅了。在实际开发中,你可能还需要学习更多关于Android框架、布局设计、性能优化等方面的知识,但有了这个基础...

Global site tag (gtag.js) - Google Analytics