Contents | Prev | Next 
 
Java Native Interface Specification
May 16, 1997
Contents
- 
	1.	  Introduction				
-  Java Native Interface Overview				
 
-  Background				
 
-  JDK 1.0 Native Method Interface				
 
-  Java Runtime Interface				
 
-  Raw Native Interface and Java/COM Interface				
 
-  Objectives				
 
-  Java Native Interface Approach				
 
-  Programming to the JNI	
 
-  Changes in JDK 1.1.2				
 
 - 
	2.	 Design Overview				
-  JNI Interface Functions and Pointers				
 
-  Loading and Linking Native Methods				
 
-  Resolving Native Method Names				
 
-  Native Method Arguments				
 
-  Referencing Java Objects				
 
-  Global and Local References				
 
-  Implementing Local References				
 
-  Accessing Java Objects				
 
-  Accessing Primitive Arrays				
 
-  Accessing Fields and Methods				
 
-  Reporting Programming Errors				
 
-  Java Exceptions				
 
-  Exceptions and Error Codes				
 
-  Asynchronous Exceptions				
 
-  Exception Handling				
 
 - 
	3.	 JNI Types and Data Structures				
-  Primitive Types				
 
-  Reference Types				
 
-  Field and Method IDs				
 
-  The Value Type				
 
-  Type Signatures				
 
-  UTF-8 Strings				
 
 - 
	4.	  JNI Functions				
-  Interface Function Table				
 
-  Version Information				
 
-  GetVersion				
 
-  Class Operations				
 
-  DefineClass				
 
-  FindClass				
 
-  GetSuperclass				
 
-  IsAssignableFrom				
 
-  Exceptions				
 
-  Throw				
 
-  ThrowNew				
 
-  ExceptionOccurred				
 
-  ExceptionDescribe				
 
-  ExceptionClear				
 
-  FatalError				
 
-  Global and Local References				
 
-  NewGlobalRef				
 
-  DeleteGlobalRef				
 
-  DeleteLocalRef				
 
-  Object Operations				
 
-  AllocObject				
 
-  
 
-  GetObjectClass				
 
-  IsInstanceOf				
 
-  IsSameObject				
 
-  Accessing Fields of Objects				
 
-  GetFieldID				
 
-  Get<type>Field Routines				
 
-  Set<type>Field Routines				
 
-  Calling Instance Methods				
 
-  GetMethodID				
 
-  Call<type>Method 
 
-  CallNonvirtual<type>Method 
 
-  Accessing Static Fields				
 
-  GetStaticFieldID				
 
-  GetStatic<type>Field Routines				
 
-  SetStatic<type>Field Routines				
 
-  Calling Static Methods				
 
-  GetStaticMethodID				
 
-  CallStatic<type>Method 
 
-  String Operations				
 
-  NewString				
 
-  GetStringLength				
 
-  GetStringChars				
 
-  ReleaseStringChars				
 
-  NewStringUTF				
 
-  GetStringUTFLength				
 
-  GetStringUTFChars				
 
-  ReleaseStringUTFChars				
 
-  Array Operations				
 
-  GetArrayLength				
 
-  NewObjectArray				
 
-  GetObjectArrayElement				
 
-  SetObjectArrayElement				
 
-  New<PrimitiveType>Array Routines				
 
-  Get<PrimitiveType>ArrayElements Routines				
 
-  Release<PrimitiveType>ArrayElements Routines				
 
-  Get<PrimitiveType>ArrayRegion Routines				
 
-  Set<PrimitiveType>ArrayRegion Routines				
 
-  Registering Native Methods				
 
-  RegisterNatives				
 
-  UnregisterNatives				
 
-  Monitor Operations				
 
-  MonitorEnter				
 
-  MonitorExit				
 
-  Java VM Interface				
 
-  GetJavaVM				
 
 - 
	5.	 The Invocation API				
-  Overview				
 
-  Creating the VM				
 
-  Attaching to the VM				
 
-  Unloading the VM				
 
-  Initialization Structures				
 
-  Invocation API Functions				
 
-  JNI_GetDefaultJavaVMInitArgs				
 
-  JNI_GetCreatedJavaVMs				
 
-  JNI_CreateJavaVM				
 
-  DestroyJavaVM				
 
-  AttachCurrentThread				
 
-  DetachCurrentThread				
 
-  
 
 
Contents | Prev | Next 
Java Native Interface Specification (HTML generated by dkramer on March 15, 1997)
Copyright © 1996, 1997 Sun Microsystems, Inc.
All rights reserved
Please send any comments or corrections to jni@java.sun.com