The Java Native Interface (JNI) is a programming framework that enables Java code running in a Java Virtual Machine (JVM) to call and be called by native applications (programs specific to a hardware and operating system platform) and libraries written in other languages such as C, C++ and assembly. The JNI framework lets a native method use Java objects in the same way that Java code uses these objects. A native method can create Java objects and then inspect and use these objects to perform its tasks. A native method can also inspect and use objects created by Java application code. JNI plays an important role to provide an interface which enables the Java able to interact with libraries of others platform. Unicode Systems uses JNI to create local methods to deal with circumstances when a program cannot be published entirely in the Java development terminology.

Important Features of JNI:

  • JNI is also used to alter a current application, written in another development language, to be available to programs.
  • JNI allows all of its programs accessibility to this efficiency in a safe and platform-independent manner.
  • A local technique can also examine and use things created by Java program code. It is sometimes generally known as the “escape hatch” for designers because it allows them to add efficiency to their Java program that the conventional APIs cannot offer.