Native code is compiled code originally written in C, C++, or Fortran, called using the Java Native Interface (JNI) by Java code. The following example is taken from the annotated disassembly of file jsynprog.java associated with demo program jsynprog.
5. class jsynprog <Function: jsynprog.<init>()> 0. 5.504 jsynprog.JavaCC() <Java native method> 0. 1.431 jsynprog.JavaCJava(int) <Java native method> 0. 5.684 jsynprog.JavaJavaC(int) <Java native method> 0. 0. [ 5] 00000000: aload_0 0. 0. [ 5] 00000001: invokespecial <init>() 0. 0. [ 5] 00000004: return
Because the native methods are not included in the Java source, the beginning of the annotated source for jsynprog.java shows each Java native method using a special index line to indicate instructions without line numbers.
0. 5.504 <Function: jsynprog.JavaCC(), instructions without line numbers> 0. 1.431 <Function: jsynprog.JavaCJava(int), instructions without line numbers> 0. 5.684 <Function: jsynprog.JavaJavaC(int), instructions without line numbers>