㈠ 我用java反编译工具把.class文件转为.java文件,其中有些这种字符,请问一下这种是怎么回事啊
不会! if ((l3 = (System.currentTimeMillis() - l2) + 10L) < 62L)
try
{
Thread.sleep(62L - l3);
}
catch (Exception )
} while (true);
if (a_byte == 1)
b();
a_Bobby.notifyDestroyed();
}
private final void d()
{
byte abyte0[] = a();
boolean flag = false;
String s1 = "BC5Data";
a a1 = this;
try
{
RecordStore recordstore;
(recordstore = RecordStore.openRecordStore(s1, false)).setRecord(1, abyte0, 0, abyte0.length);
recordstore.closeRecordStore();
return;
}
catch (Exception )
try
{
RecordStore.deleteRecordStore(s1);
}
catch (Exception )
······
看到了吧~这就是格式!汇编语言!!!
编译连接之后,再用txt打开~就只能看到乱码啦。
㈡ 为什么Java反编译后带有汇编代码
那个不是汇编。。。是反编译工具无法识别的字节码(bytecodes,java中间代码),因为无法识别,自然只能直接把字节码打出来给你看了。
你多试几种反编译工具,并不是所有的都会出的,也不是所有的都在同一个地方出。这个取决于反编译工具的作者对字节码的理解。
㈢ Java反编译后得到的不是Java源代码。
估计你得到的是java虚拟机指令,因为.class文件与java源代码不是一一对应的,但与虚拟机指令却是一一对应的,就像exe文件中的机器指令与汇编指令是一一对应的,要看懂这些代码可以参考java虚拟机指令集
㈣ java反编译出来的代码求解,解出后可追加50分
为什么不用Java Decompiler反编译呢?
不会出现这样的情况
唯一不足的就是反编译后原来的变量会变成数值
㈤ java反编译后问题奇怪。
这只能说明两点
1、你的反编译工作很弱;
2、别人的代码写的很好。
㈥ java 代码反编译错误
换个软件试试。可能原代码已加密,你需要能解密的反编译软件去编译。
㈦ java反编译class文件后出现PUSH、POP怎么理解
以下是同一CLASS文件反编译出来的代码:
可以看出:
1、JODE出来的代码的可读性最好,不过有CLASS文件代码用JODE是反编译不出来出现异常;
2、JAD出来的代码经常要进行大量整理;
3、JODE和JAD对混混淆过的代码,变量的顺序可能会不一样,自变量的命名,JODE会好一些。
4、对于PUSH和POP,左修整时候,可以自己加自变量,临时存储;
5、JAVA对于表达式或函数参数,是从右到左进行解释的。函数参数,最后PUSH的,是最右边的参数;对于
等号赋值也是先右后左进行出栈。
㈧ java的class文件,经过反编译以后获得的源代码是L(小写),1,i(大写),o(大写和小写),0的组合,是怎么回事
你看到的已经是源码了,没有办法看到开发时候写的代码,因为通过加密混淆软件,已经把原来写的代码中的变量、类名、方法都改成了混乱的组合方式了,所以你看到的都是很混乱的东西,你其实可以自己做一次对自己Java代码的混淆测试,看看源代码,再看看混淆后的,你就知道了,根本还原不了
㈨ 为什么反编译class出来的java再转化为class会出现字符报错
是这样子的,因为当你编写java程序代码的时候,运行程序会生成.class文件,但是当你后期保存再次运行的时候,其中有些代码没有同步到位,导致代码有所缺失...
㈩ java反编译工具 出了问题 该怎么办
可以将看不懂的.class文件转换成看得懂的.java文件,这样一来就能很方便的读懂别人编写的java代码。
java反编译工具有多种,推荐使用jd-gui