Fr. 45.00

The Java Native Interface - Programmer's Guide and Specification

English · Paperback / Softback

Shipping usually within 3 to 5 weeks

Description

Read more

The Java Native Interface (JNI) enables the integration of code written in the Java programming language with code written in other languages such as C and C++. It allows programmers to take full advantage of the Java platform without having to abandon their investment in legacy code.

This book is the definitive resource and a comprehensive guide to working with the JNI. Entirely up-to-date, the book offers a tutorial, a detailed description of JNI features and programming techniques, JNI design justifications, and the official specification for all JNI types and functions.

You will find coverage of important topics such as:

Writing native methods
Passing data types between the Java language and native programming languages
Embedding a Java virtual machine implementation in native applications
Leveraging legacy native libraries
Improving the efficiency and reliability of your code

An entire chapter is devoted to avoiding common traps and pitfalls. The book uses numerous examples to illustrate programming techniques that have proven to be effective.

0201325772B04062001

List of contents

I. INTRODUCTION AND TUTORIAL.
1. Introduction.

The Java Platform and Host Environment. Role of the JNI. Implications of Using the JNI. When to Use the JNI. Evolution of the JNI. Example Programs.
2. Getting Started.

Overview. Declare the Native Method. Compile the HelloWorld Class. Create the Native Method Header File. Write the Native Method Implementation. Compile the C Source and Create a Native Library. Run the Program.
II. PROGRAMMER'S GUIDE.
3. Basic Types, Strings, and Arrays.

A Simple Native Method. Accessing Strings. Accessing Arrays.
4. Fields and Methods.

Accessing Fields. Calling Methods. Invoking Constructors. Caching Field and Method Ids. Performance of JNI Field and Method Operations.
5. Local and Global References.

Local and Global References. Freeing References. Rules for Managing References.
6. Exceptions.

Overview. Proper Exception Handling.
7. The Invocation Interface.

Creating the Java Virtual Machine. Linking Native Applications with the Java Virtual Machine. Attaching Native Threads.
8. Additional JNI Features.

JNI and Threads. Writing Internationalized Code. Registering Native Methods. Load and Unload Handlers. Reflection Support. JNI Programming in C++.
9. Leveraging Existing Native Libraries.

One-to-One Mapping. Shared Stubs. One-to-One Mapping versus Shared Stubs. Implementation of Shared Stubs. Peer Classes.
10. Traps and Pitfalls.

Error Checking. Passing Invalid Arguments to JNI Functions. Confusing jclass with jobject. Truncating jboolean Arguments. Boundaries between Java Application and Native Code. Confusing IDs with References. Caching Field and Method Ids. Terminating Unicode Strings. Violating Access Control Rules. Disregarding Internationalization. Retaining Virtual Machine Resources. Excessive Local Reference Creation. Using Invalid Local References. Using the JNIEnv across Threads. Mismatched Thread Models.
III. SPECIFICATION.
11. Overview of the JNI Design.

Design Goals. Loading Native Libraries. Linking Native Methods. Calling Conventions. The JNIEnv Interface Pointer. Passing Data. Accessing Objects. Errors and Exceptions.
12. JNI Types.

Primitive and Reference Types. Field and Method Ids. String Formats. Constants.
13. JNI Functions.

Summary of the JNI Functions. Specification of JNI Functions.
Index. 0201325772T04062001

About the author

Sheng Liang, a staff engineer in Java Software at Sun Microsystems, Inc., designed the JNI and led the Java virtual machine development for the first release of the Java 2 platform. He holds a Ph.D. in computer science from Yale University.

0201325772AB04062001

Summary

The Java Native Interface is the interface that provides the facilities to integrate Java into existing C and C++ code. This text provides a guide to the technology.

Product details

Authors Sheng Liang, Sheng Liang
Publisher Addison-Wesley Longman, Amsterdam
 
Languages English
Product format Paperback / Softback
Released 01.01.1999
 
EAN 9780201325775
ISBN 978-0-201-32577-5
No. of pages 320
Weight 540 g
Series The Java Series
Prentice Hall
Java (Addison-Wesley)
Prentice Hall
Java Series
Subject Natural sciences, medicine, IT, technology > IT, data processing > Data communication, networks

Customer reviews

No reviews have been written for this item yet. Write the first review and be helpful to other users when they decide on a purchase.

Write a review

Thumbs up or thumbs down? Write your own review.

For messages to CeDe.ch please use the contact form.

The input fields marked * are obligatory

By submitting this form you agree to our data privacy statement.