http://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/jniTOC.html

1. Introduction

Java Native Interface OverviewBackground

JDK 1.0 Native Method InterfaceJava Runtime Interface
Raw Native Interface and Java/COM Interface

ObjectivesJava Native Interface Approach
Programming to the JNIChanges in JDK 1.1.2

2. Design Overview

JNI Interface Functions and PointersCompiling, Loading and Linking Native Methods

Resolving Native Method NamesNative Method Arguments

Referencing Java Objects

Global and Local ReferencesImplementing Local References

Accessing Java Objects

Accessing Primitive ArraysAccessing Fields and Methods

Reporting Programming ErrorsJava Exceptions

Exceptions and Error CodesAsynchronous ExceptionsException Handling

3. JNI Types and Data Structures

Primitive Types
Reference Types
Field and Method IDs
The Value Type
Type Signatures
Modified UTF-8 Strings

4. JNI Functions

Interface Function Table
Version Information

GetVersion

Class Operations

DefineClassFindClassGetSuperclassIsAssignableFrom

Exceptions

ThrowThrowNew
ExceptionOccurredExceptionDescribe
ExceptionClearFatalErrorExceptionCheck

Global and Local References

NewGlobalRefDeleteGlobalRef
DeleteLocalRefEnsureLocalCapacityPushLocalFramePopLocalFrameNewLocalRef

Weak Global References

NewWeakGlobalRefDeleteWeakGlobalRef

Object Operations

AllocObjectNewObject, NewObjectA, and NewObjectV
GetObjectClass
GetObjectRefType
IsInstanceOf
IsSameObject

Accessing Fields of Objects

GetFieldIDGet<type>Field Routines
Set<type>Field Routines

Calling Instance Methods

GetMethodIDCall<type>Method Routines, Call<type>MethodA Routines, and Call<type>MethodV Routines
CallNonvirtual<type>Method Routines, CallNonvirtual<type>MethodA Routines, and CallNonvirtual<type>MethodV Routines

Accessing Static Fields

GetStaticFieldIDGetStatic<type>Field Routines
SetStatic<type>Field Routines

Calling Static Methods

GetStaticMethodIDCallStatic<type>Method Routines, CallStatic<type>MethodA Routines, and CallStatic<type>MethodV Routines

String Operations

NewStringGetStringLength
GetStringCharsReleaseStringChars
NewStringUTFGetStringUTFLength
GetStringUTFCharsReleaseStringUTFCharsGetStringRegionGetStringUTFRegionGetStringCriticalRelease StringCritical

Array Operations

GetArrayLengthNewObjectArray
GetObjectArrayElementSetObjectArrayElement
New<PrimitiveType>Array RoutinesGet<PrimitiveType>ArrayElements Routines
Release<PrimitiveType>ArrayElements RoutinesGet<PrimitiveType>ArrayRegion Routines
Set<PrimitiveType>ArrayRegion RoutinesGetPrimitiveArrayCriticalReleasePrimitiveArrayCritical

Registering Native Methods

RegisterNativesUnregisterNatives

Monitor Operations

MonitorEnterMonitorExit

NIO Support

NewDirectByteBufferGetDirectBufferAddressGetDirectBufferCapacity

Reflection Support

FromReflectedMethodFromReflectedFieldToReflectedMethodToReflectedField

Java VM Interface

GetJavaVM

5. The Invocation API

Overview

Creating the VMAttaching to the VM
Unloading the VM

Library and Version Management

JNI_OnLoadJNI_OnUnload

Invocation API Functions

JNI_GetDefaultJavaVMInitArgsJNI_GetCreatedJavaVMs
JNI_CreateJavaVMDestroyJavaVM
AttachCurrentThreadAttachCurrentThreadAsDaemonDetachCurrentThreadGetEnv

Java Native Interface Specification—Contents的更多相关文章

  1. Java Native Interface Specification Contents 翻译

    https://docs.oracle.com/en/java/javase/12/docs/specs/jni/index.html Google翻译 第1章:简介 本章介绍Java Native ...

  2. Java Native Interface Specification(JNI)

    Java Native Interface Specification(JNI) 使用场景: 需要的功能,标准的java不能提供 有了一个用其他的语言写好的工具包,希望用java去访问它 当需要高性能 ...

  3. Java Native Interface Specification

    http://docs.oracle.com/javase/6/docs/technotes/guides/jni/spec/jniTOC.html http://www.ibm.com/develo ...

  4. JAVA Native Interface (JNI)

    1.  Introduction At times, it is necessary to use native (non-Java) codes (e.g., C/C++) to overcome ...

  5. Java Native Interface 六JNI中的异常

    本文是<The Java Native Interface Programmer's Guide and Specification>读书笔记 在这里只讨论调用JNI方法可能会出现的异常, ...

  6. Java Native Interface 五 JNI里的多线程与JNI方法的注册

    本文是<The Java Native Interface Programmer's Guide and Specification>读书笔记 JNI里的多线程 在本地方法里写有关多线程的 ...

  7. Java Native Interface 四--JNI中引用类型

    本文是<The Java Native Interface Programmer's Guide and Specification>读书笔记 JNI支持将类实例和数组类型(如jobjec ...

  8. Java Native Interface 二 JNI中对Java基本类型和引用类型的处理

    本文是<The Java Native Interface Programmer's Guide and Specification>读书笔记 Java编程里会使用到两种类型:基本类型(如 ...

  9. Java Native Interface 编程系列一

    本文是<Java Native Interface Programmer's Guide and Specification>的读书笔记 Java Native Interface可以让编 ...

随机推荐

  1. Poj-2250-Compromise

    题意是找两篇文章中的最长子单词序列 能得出个数,但不知如何输出,找不到路径 看了别人的dfs,有所领悟: 若输入s1:ab,bd,fk,ce,ak,bt,cv s2: ab,fk,ce,tt,ak,b ...

  2. FileOutputStream保存文件

    //保存文件,根据传入的路径,存放在SD卡目录下public boolean saveToPath(String title, String pageName) { Bitmap b = getCha ...

  3. day5----正则

    %a    本地(locale)简化星期名称     %A    本地完整星期名称     %b    本地简化月份名称     %B    本地完整月份名称     %c    本地相应的日期和时间 ...

  4. Asp.Net Web API 2第八课——Web API 2中的属性路由

    前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html 路由就是Web API如何 ...

  5. 控制ASP.NET Web API 调用频率与限流

    ASP.NET MVC 实现 https://github.com/stefanprodan/MvcThrottle ASP.NET WEBAPI 实现 https://github.com/stef ...

  6. [stm32] 中断

    #include "stm32f10x.h" #include "stm32f10x_tim.h" #include "misc.h" #i ...

  7. 谷歌(Chrome)浏览器调试JavaScript小技巧

    谷歌浏览器不仅仅可以用来上网,对于开发人员来说,它更像是一款强大的开发辅助工具. 工欲善其事必先利其器,接下来笔者给大家分享一些Chrome的使用方法. 假如读者了解如何在Chrome中添加JavaS ...

  8. autohotkey在运维中的应用

         AutoHotkey是一个自由.开源的宏生成器和自动化软件工具,它让用户能够自动执行重复性任务.AutoHotkey可以修改任何应用程序的用户界面(例如,把默认的Windows按键控制命令替 ...

  9. paip.gui控件tabs控件加载内容的原理以及easyui最佳实现

    paip.gui控件tabs控件加载内容的原理以及easyui最佳实现 //////////////tabs控件的加载 同form窗体一样,俩个方式 两个方式:一个是url,简单的文本可以使用这个,不 ...

  10. android 给空白包签名

    前言:之前公司app在腾讯开放平台认领应用时,涉及了一个问题:就是给空白包签名.然后再上传上去审核. 腾讯开放平台的官方说明如下, 如何签名:jarsgner-verbose-keystore[key ...