Java Tools - JavaP The Java Class File Disassembler 1

Posted by dogukanhan on September 15, 2018 · 1 min read
public class Hello{
  private String str;
  public static void main(String args[]){
    System.out.println("Hello world");
  }
}

Sınıfını ele alalım. Sınıf derlemek için javac kullanalım.

javac Hello.java

Derleme Sonucucunda ortaya Hello.class dosyamız çıkıcaktır.

Javap hello komutu public ve protected methodların ve değişkenlerin listesini verir. “-private ile private olanlarda dahil edilebilir.”

javap Hello
public class Hello {
  public Hello();
  public static void main(java.lang.String[]);
}

javap -c hello komutu ile kod dissable edilebilir.

Compiled from "Hello.java"
public class Hello {
  public Hello();
    Code:
       0: aload_0
       1: invokespecial #1                  // Method java/lang/Object."<init>":()V
       4: return

  public static void main(java.lang.String[]);
    Code:
       0: getstatic     #2                  // Field java/lang/System.out:Ljava/io/PrintStream;
       3: ldc           #3                  // String Hello world
       5: invokevirtual #4                  // Method java/io/PrintStream.println:(Ljava/lang/String;)V
       8: return
}