Java Reference
In-Depth Information
36 {
37 public Listing1();
38 descriptor: ()V
39 flags: ACC_PUBLIC
40 LineNumberTable:
41 line 1: 0
42 LocalVariableTable:
43 Start Length Slot Name Signature
44 0 5 0 this LListing1;
45 Code:
46 stack=1, locals=1, args_size=1
47 0: aload_0
48 1: invokespecial #1 // Method java/lang/Object."<init>":()V
49 4: return
50 LineNumberTable:
51 line 1: 0
52 LocalVariableTable:
53 Start Length Slot Name Signature
54 0 5 0 this LListing1;
55
56 public static void main(java.lang.String[]);
57 descriptor: ([Ljava/lang/String;)V
58 flags: ACC_PUBLIC, ACC_STATIC
59 LineNumberTable:
60 line 3: 0
61 LocalVariableTable:
62 Start Length Slot Name Signature
63 0 1 0 args [Ljava/lang/String;
64 Code:
65 stack=0, locals=1, args_size=1
66 0: return
67 LineNumberTable:
68 line 3: 0
69 LocalVariableTable:
70 Start Length Slot Name Signature
71 0 1 0 args [Ljava/lang/String;
72 }
That javap result is lengthy compared to the original Java source code: that goes to show just how
expressive Java is. It is worth noting at this point that the result of javap is not the same thing as what is in the
classfile: Listing1.class is not a compressed version of the same content. Instead, the javap command gives
us a human rendition of the information that is in the classfile.
Let's move through things step by step. The first part is the preamble (lines 7-10):
Classfile /Users/RCFischer/wkdir/Books/java8/build/classes/production/ch8/Listing1.class
Last modified Dec 6, 2014; size 367 bytes
MD5 checksum 008abb234928faafc8a836436ea158db
Compiled from "Listing1.java"
 
Search WWH ::




Custom Search