什么是非Java代码?

时间:2016-06-26 04:47:14

标签: java jvm

我正在学习 JVM ,并且在加载.class文件期间遇到了存储在“Java Native Stack”(运行时数据区)中的这个词。 非Java代码也称为本机代码,但我真的不明白它是什么。

1 个答案:

答案 0 :(得分:4)

非Java代码是未使用Java编程语言编写的代码。实际上有两种:

  • 实现已声明为native的Java方法的本机代码(例如,用C或C ++编写)。本机代码通常被编译为硬件的本机指令集,组装成共享库/ DLL并由JVM加载以响应System方法调用。

  • 由Java编译器以外的东西生成的JVM字节码。有其他语言的编译器,如Scala,Lua,Python,C#等,它们生成用于在JVM平台上执行的字节码。