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.