有个小疑点懂的来解释一下,谢谢

   阅读
有个小问题懂的来解释一下,多谢.
java源代码编译成的.class字节码文件通过jd-gui等工具反编译成java的源代码的过程叫反编译。

问题是 .class字节码文件中的内容都是一大堆看不懂的字节,jdk里有个工具叫javap 可以把字节码文件用一种可以阅读的方式转换出类似这种代码:  
  0 bipush 10
  2 newarray 8 (byte)
  4 astore_1
  5 getstatic #16 <java/lang/System.out>
  8 aload_1
  9 iconst_0
 10 baload
 11 invokevirtual #22 <java/io/PrintStream.println>
 14 aconst_null
 15 astore_2
 16 aconst_null
 17 astore_3
这个过程叫什么呢?我看网上有说反汇编什么的,这个工具搞出来的东西是汇编代码什么的吗?强迫症求大神帮忙解释。

------解决方案--------------------
这是查看java字节码的
 0 bipush 10  ----给变量赋值为10
  2 newarray 8 (byte) ----分配数组
  4 astore_1
  5 getstatic #16 <java/lang/System.out>  ----取得静态变量
  8 aload_1
  9 iconst_0
 10 baload
 11 invokevirtual #22 <java/io/PrintStream.println>---调用println方法
 14 aconst_null
 15 astore_2
 16 aconst_null
 17 astore_3
------解决方案--------------------
javap 命令是看字节码。
jd-gui 反编译class文件出来的是 java代码,绝大部分是可以看懂的
------解决方案--------------------
.class反编译之后是.java。里面就是JAVA代码,楼主直接能看懂
阅读
上一篇:求推荐java并发读物 下一篇:返回列表