This section provides a tutorial example of how to disassemble Java bytecodes with 'javap -c -private' command. The disassembled codes are JVM execution instructions.
Actually, the main function of "javap" is to disassemble Java bytecodes with the "-c" option.
The disassembed codes are execution instructions of JVM (Java Virtual Machine).
Now, let's try "javap -c -private" with the bytecode compiled from Circle.java source code.
I used "-c" and "-private" options together to disassemble both private and public methods.
All class level variables are printed out in the disassembled codes as comments like "//Field r:I".
Constants are printed out in the disasembled codes as comments like "//double 3.14159d".
String constants are also printed out in the disasembled codes as comments like "//String Centimeter".
So don't distribute any Java bytecode compiled from source codes that contain any password strings.
People can easy find the passwords using the "javap" tool.
If you want to understand each statement listed in the disassembled code, you need to read the
JVM Specification first.