プログラマーの利点: 上位 5 つの Java 逆コンパイル ツールを推奨します。具体的なコード例が必要です。
Java 言語の普及に伴い、プログラマーにとって Java 逆コンパイル ツールを習得することは重要な課題となっています。重要なスキル。開発プロセスでは、Java バイトコードの分析とデバッグが必要になることがよくありますが、このような場合に逆コンパイル ツールが役に立ちます。以下に、トップ 5 つの Java 逆コンパイル ツールを皆さんにお勧めし、参考として具体的なコード例を示します。
import java.util.ArrayList; import java.util.List; public class Example { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); for (String str : list) { System.out.println(str); } } }
JD-GUI を使用して上記のコードを逆コンパイルすると、次の結果が得られます。
import java.util.ArrayList; import java.util.List; public class Example { public static void main(String[] paramArrayOfString) { ArrayList localArrayList = new ArrayList(); localArrayList.add("Hello"); localArrayList.add("World"); for (String str : localArrayList) { System.out.println(str); } } }
import java.util.ArrayList; import java.util.List; public class Example { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); for (String str : list) { System.out.println(str); } } }
Procyon を使用して上記のコードを逆コンパイルすると、次の結果が得られます。 Java バイトコード ファイルを可読性の高い Java ソース コードに逆コンパイルできる強力な Java 逆コンパイラです。 FernFflower は Java 8 の新機能の逆コンパイルをサポートしており、実行速度と安定性の点で非常に優れたパフォーマンスを発揮します。以下は、FernFlower を使用して逆コンパイルされたサンプル コードです:
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Example { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); for (Iterator<String> iterator = list.iterator(); iterator.hasNext(); ) { String str = iterator.next(); System.out.println(str); } } }
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Example { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); for (Iterator<String> iterator = list.iterator(); iterator.hasNext(); ) { String str = iterator.next(); System.out.println(str); } } }
JADこの古い Java 逆コンパイル ツールは、メンテナンスは終了しましたが、今でも多くのプログラマーに愛されています。 JAD は、Java 1.1 から Java 7 へのバイトコードの逆コンパイルをサポートしますが、Java 8 以降の新機能はサポートしません。以下は、JAD を使用して逆コンパイルされたサンプル コードです:
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Example { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); Iterator<String> iterator = list.iterator(); while (iterator.hasNext()) { String str = iterator.next(); System.out.println(str); } } }
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Example { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); for (Iterator<String> iterator = list.iterator(); iterator.hasNext(); ) { String str = iterator.next(); System.out.println(str); } } }
CFRこの逆コンパイル ツールは Java 8 以降をサポートしており、Java バイトコード ファイルを読み取り可能な Java ソース コードに逆コンパイルできます。 CFR の逆コンパイル結果は非常に正確で、ほとんどの Java 言語機能をサポートする、非常に強力な逆コンパイル ツールです。以下は、CFR を使用して逆コンパイルされたサンプル コードです。
import java.util.*; import java.io.*; public class Example { public static void main(String[] args) { ArrayList arraylist = new ArrayList(); arraylist.add("Hello"); arraylist.add("World"); for(Iterator iterator = arraylist.iterator(); iterator.hasNext(); System.out.println((String)iterator.next())); } }
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Example { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); for (Iterator<String> iterator = list.iterator(); iterator.hasNext(); ) { String str = iterator.next(); System.out.println(str); } } }
以上がプログラマーへの朗報: 推奨されるトップ 5 の Java 逆コンパイル ツールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。