2014-07-08 73 views
3

我准备Java核心,我得到了以下疑问的Java反编译器和Java反编译

的javap是反汇编器或反编译器?他们之间有什么区别?哪些java CLI命令被使用?

+0

可能重复[是Java是编译还是解释编程语言?](http://stackoverflow.com/questions/1326071/is-java-a-编译或解释编程语言) –

+4

@sphanley不一样的东西,你提到的问题是Java是解释还是编译,这里的问题是关于实用程序javap – morgano

+0

附注:Oracle states [here]( http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javap.html):“** javap **命令反汇编一个或多个类文件。”我不确定他们是否遵循“技术”术语,但似乎至少与摩根诺的答案相符。 – awksp

回答

6

Javap只是一个“非正式”的拆装程序,它的输出为您提供了有关字节码的信息,但不适合它被“汇编程序”使用,它只是供人阅读。

(从C语言世界)传统的差:

  • 编译器:编译一个相对高的电平的源代码的汇编语言
  • 汇编程序:编译汇编代码转换为机器代码

得出你的结论“解编译器”和“拆卸器”

有时一个软件可以执行两个步骤(反汇编和反编译)也称为反编译器,但它仍然取决于上下文