在玩这个谜题(这是一个Java关键字问答游戏)时,我遇到了原生关键字。

Java中的本机关键字用于什么?


当前回答

Native是Java中的一个关键字,用于使未实现的结构(方法)成为抽象的,但它将是依赖于平台的,例如本机代码,并从本机堆栈而不是Java堆栈执行。

其他回答

NATIVE是非访问修饰符。它只能应用于METHOD。 它表示方法或代码的平台依赖的实现。

直接来自Java语言规范:

本机方法是在依赖于平台的代码中实现的,通常是用其他编程语言(如C、c++、FORTRAN或汇编语言)编写的。本机方法的主体仅以分号形式给出,表示省略了实现,而不是一个块。

它标记了一个方法,它将在其他语言中实现,而不是在Java中。它与JNI (Java本机接口)一起工作。

在过去,本机方法用于编写性能临界区,但随着Java的速度越来越快,这种方法现在不太常见了。当前需要本机方法时

您需要从Java调用用其他语言编写的库。 您需要访问只能通过其他语言(通常是C语言)访问的系统或硬件资源。实际上,许多与真实计算机交互的系统函数(例如磁盘和网络IO)只能这样做,因为它们调用本机代码。

另请参阅 Java本机接口规范

Native是Java中的一个关键字,用于使未实现的结构(方法)成为抽象的,但它将是依赖于平台的,例如本机代码,并从本机堆栈而不是Java堆栈执行。

正如SLaks回答的那样,native关键字用于调用本机代码。

它也被GWT用来实现javascript方法。