GeeksforGeeks

A native keyword é aplicada a um método para indicar que o método está implementado em código nativo usando JNI (Java Native Interface). native é um modificador aplicável apenas para métodos e não podemos aplicá-lo em qualquer outro lugar. Os métodos que são implementados em C, C++ são chamados como métodos nativos ou métodos estrangeiros.

Os principais objetivos da palavra-chave nativa são:

  • Para melhorar a performance do sistema.
  • Para alcançar comunicação em nível de máquina/nível de memória.
  • Para usar código não-java já existente.

Pseudo código para usar a palavra-chave nativa em java:

Class Native
{
Static
{
System.LoadLibrary("Native library path");
}
Public native void m();
}
Class Test
{
Public static void main(String args)
{
Native n = new Native();
n.m();
}
}

>
>



Pontos importantes sobre a palavra-chave nativa:

  • Para métodos nativos a implementação já está disponível em línguas antigas como C, C++ e não somos responsáveis pela implementação. Portanto, a declaração de métodos nativos deve terminar com ; (ponto e vírgula).
  • Não podemos declarar método nativo como abstrato.
  • Não podemos declarar método nativo como strictfp porque não há garantia de que as línguas antigas (C, C+++) sigam o padrão IEEE 754. Portanto, a combinação nativa strictfp é uma combinação ilegal para métodos.
  • A principal vantagem da palavra-chave nativa é a melhoria no desempenho, mas a principal desvantagem da palavra-chave nativa é que ela quebra a natureza independente de plataforma do java.

Declarando Métodos Nativos: Nesta seção explicamos como declarar um método nativo em Java e como gerar o protótipo da função C/C++ correspondente.

private native String getLine(String prompt);

Do lado da linguagem nativa:

javah -jni Prompt
JNIEXPORT jstring JNICALL Java_Prompt_getLine(JNIEnv *, jobject, jstring);

Referência:http://www.codejava.net/java-core/the-java-language/native-keyword

Este artigo é contribuído por Bishal Kumar Dubey. Se você gosta de GeeksforGeeks e gostaria de contribuir, você também pode escrever um artigo usando contribute.geeksforgeeks.org ou enviar seu artigo pelo correio para [email protected]. Veja seu artigo aparecendo na página principal do GeeksforGeeks e ajude outros Geeks.

Deixe uma resposta

O seu endereço de email não será publicado.