Vorteile für Programmierer: Empfehlen Sie die 5 besten Java-Dekompilierungstools, benötigen Sie spezifische Codebeispiele
Mit der weit verbreiteten Anwendung der Java-Sprache ist die Beherrschung der Java-Dekompilierungstools zu einer wichtigen Fähigkeit für Programmierer geworden. Während des Entwicklungsprozesses müssen wir häufig Java-Bytecode analysieren und debuggen, und dann sind Dekompilierungstools nützlich. Im Folgenden werde ich jedem die 5 besten Java-Dekompilierungstools empfehlen und spezifische Codebeispiele als Referenz bereitstellen.
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); } } }
Verwenden Sie die JD-GUI, um den obigen Code zu dekompilieren. Sie können die folgenden Ergebnisse erhalten:
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); } } }
Wenn Sie Procyon zum Dekompilieren des obigen Codes verwenden, können Sie die folgenden Ergebnisse erhalten:
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); } } }
Verwenden Sie FernFlower, um den obigen Code zu dekompilieren. Sie können die folgenden Ergebnisse erhalten:
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); } } }
Verwenden Sie JAD, um den obigen Code zu dekompilieren. Sie können die folgenden Ergebnisse erhalten:
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); } } }
Wenn Sie CFR verwenden, um den obigen Code zu dekompilieren, können Sie die folgenden Ergebnisse erhalten:
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); } } }
Die oben genannten sind die 5 besten Java-Dekompilierungstools, die ich empfehle. Jedes von ihnen hat unterschiedliche Eigenschaften Der Vorteil besteht darin, dass Sie das passende Werkzeug entsprechend Ihren persönlichen Bedürfnissen auswählen können. Ich hoffe, dass diese Codebeispiele Programmierern bei ihrer Dekompilierungsarbeit etwas Hilfe und Referenz bieten können.
Das obige ist der detaillierte Inhalt vonGute Nachrichten für Programmierer: Empfohlene 5 Top-Java-Dekompilierungstools. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!