使用IDEA工具可以直接反编译class文件
然后,在File菜单下,找到project structure菜单,找到文件输出路径。class文件复制进去后,可以从idea工具的包文件夹下,显示此文件。通过此方式,我们可以了解class文件内代码的情况,有助于学习理解。将此class文件,复制,粘贴到idea工具,源码文件夹下,首先,我们可以先使用idea工具,编写一个类。依次进入,找到编写类对应的class文件。复制此文件路径,在文件浏览器
·
首先,我们可以先使用idea工具,编写一个类。
代码如下:
package com.shrimpking.code01;
public class Demo02
{
public static void main(String[] args)
{
String name = "英文";
switch (name)
{
case "中文":
System.out.println("这是中文");
break;
case "英文":
System.out.println("this is english");
break;
default:
System.out.println("异常");
}
}
}
运行此类,产生class文件。
然后,在File菜单下,找到project structure菜单,找到文件输出路径。
复制此文件路径,在文件浏览器中打开
依次进入,找到编写类对应的class文件。
将此class文件,复制,粘贴到idea工具,源码文件夹下,
class文件复制进去后,可以从idea工具的包文件夹下,显示此文件。
双击此class文件,idea工具会自动反编译此文件,反编译后的代码如下:
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
package com.shrimpking.code01;
public class Demo02 {
public Demo02() {
}
public static void main(String[] args) {
String name = "英文";
byte var3 = -1;
switch(name.hashCode()) {
case 646394:
if (name.equals("中文")) {
var3 = 0;
}
break;
case 1065142:
if (name.equals("英文")) {
var3 = 1;
}
}
switch(var3) {
case 0:
System.out.println("这是中文");
break;
case 1:
System.out.println("this is english");
break;
default:
System.out.println("异常");
}
}
}
通过此方式,我们可以了解class文件内代码的情况,有助于学习理解。
更多推荐
所有评论(0)