对于 CIL / MSIL,我可以在文本编辑器中编写代码并使用 ilasm / ildasm 进行编译/反编译。
我可以使用 Reflector 查看由 .NET 类生成的 CIL。
在 Java 世界中, javap -c 显示了反汇编的字节码。
如何编译 Java 字节码?(即 ilasm / ildasm 的 Java 等价物)。
是否有支持 Java 字节码的 IDE?
IDE 是否支持调试,即单步执行/断点等?
要使用字节码,您可以使用 ASM 或BCEL
看看 org.apache.bcel.util.BCELifier,它接受一个给定的类并将其转换为一个 BCEL 程序(当然是在 Java 中)。它将向您展示如何使用 BCEL 生成某些代码。
茉莉:
http://jasmin.sourceforge.net/
它是 Java 字节码的汇编器。虽然上面的海报指出,手动编码 Java 字节码可能不是很有用,但 Jasmin 已被用作以 JVM 作为运行时的编译器的后端。因此,您的编译器可以输出 Jasmin 汇编程序指令,然后 Jasmin 将它们转换为 Java 类。