1、 编辑java文件后(有注释的情况下)
使用eclipse编译后成为.class文件后
2、 使用反编译工具编译后使用自带(Ctrl+S)的保存源码方式保存
3、 仅复制java翻译后的信息
其大小目前为149字节。
后续处理
a. 现在删除掉【第一步】源码文件中无关注释行,其大小变为118字节,但是其功能仍能实现。
b. 现在将【第二步】中反编译工具保存的源码删除了无关部分,再看其大小。发现只有通过删除无关代码和空行后,才能使得其大小与第三步得到为java文件大小一致。
c. 空格和字符数不一致都会导致两个文件大小出现差异。
结论
Class文件反编译后得到的JAVA源码的行数和源码会有部分的变动,并且反编译后得到的java文件的注释行是没有的。这些都会导致反编译得到的文件的大小会与源码包有差异。只有在两个文件的空格和字符数都一致时,两个文件的才会表现出大小一致。
本文转自 ping9527 51CTO博客,原文链接:http://blog.51cto.com/babyhanggege/1899257,如需转载请自行联系原作者