本文目录一览:
有没有这样的软件: 用jd-gui可以反编译class文件,但是不能修改。有可以反编译并直接修改的么?
jd-gui可以将看到的反编译结果保存到一个zip压缩包里面,操作方法如下:
1、首先创建一个class文件,打开记事本。
2、输入一个基本的java程序,如图所示。
3、然后将txt后缀改成.java后缀的文件,如图所示。
4、然后用命令行来编译test.java,如图命令。
5、然后打开jd-gui工具,点击如图标记图标,进行选择文件。
6、选择相应的文件,进行编译test.class文件。
7、点击打开后,就可以看到已经编译成功了。
JAVA中.class文件是什么意思?有什么用吗?
JAVA中.class文件是什么意思,有什么用吗,解决办法:
JAVA中*.java这样的文件是用java语言编写的源文件。
经过编译会变成相应的 *.class 文件 *.class 文件。
有一处编译到处运行的特点(即windows生成的class 可以在 linux系统中运行)。
注:这个*.class 不是类似于 *.exe这样的可执行文件只能被java虚拟机执行。
如以上回答未解决问题,请看:
.class 文件是.java的编译文件。
在系统中的jvm只认识.class的二进制编码文件。
.class文件就是运行在jvm上的java程序。
java的跨平台性就是.class,可以运行在任何系统的jvm(java虚拟机)上。
直接替换class文件风险
较低。
class文件通常很容易编译,但不存在源代码时,通常需要反编译,修改,再编译的过程,比较繁琐,而且有时候翻译的文件并不准确。我们可以通过16进制编辑器直接修改,效果也是最直接的。
2、替换完class,是否需要重启容器。如tomcat7是无需重启的,但是常量类不再规范的一个类的时候,可能修改了一个类,其他的编译好的仍然使用原值。
3超过5个class,有必要打war包,就不要单次的去替换class文件,不然出了问题还要还原上一个版本。
4、即使不重启容器,也要把缓存清除,也就是清除tomcatwork下的目录文件。
5、如果替换的class文件中包含常量,但是常量类中的常量值没有替换,就会出问题。