Naturalne słowo kluczowe jest stosowane do metody, aby wskazać, że metoda jest zaimplementowana w natywnym kodzie przy użyciu JNI (Java Native Interface). natywny jest modyfikatorem stosowanym tylko do metod i nie możemy go zastosować nigdzie indziej. Metody, które są zaimplementowane w C, C++ są nazywane metodami natywnymi lub metodami zagranicznymi.
Główne cele natywnego słowa kluczowego to:
- Poprawa wydajności systemu.
- Uzyskanie komunikacji na poziomie maszyny/pamięci.
- Użycie już istniejącego starszego kodu niejavowego.
Pseudo kod do użycia natywnego słowa kluczowego w 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();
}
}
Ważne punkty dotyczące rodzimego słowa kluczowego:
- Dla metod natywnych implementacja jest już dostępna w starych językach jak C, C++ i nie jesteśmy odpowiedzialni za dostarczanie implementacji. Stąd deklaracja metody natywnej powinna kończyć się znakiem ; (średnik).
- Nie możemy zadeklarować metody natywnej jako abstrakcyjnej.
- Nie możemy zadeklarować metody natywnej jako strictfp, ponieważ nie ma gwarancji, że stare języki (C, C++) przestrzegają standardu IEEE 754. Stąd natywna kombinacja strictfp jest nielegalną kombinacją dla metod.
- Główną zaletą natywnego słowa kluczowego jest poprawa wydajności, ale główną wadą natywnego słowa kluczowego jest to, że łamie ono niezależną od platformy naturę javy.
Deklarowanie natywnych metod: W tej sekcji wyjaśniamy, jak zadeklarować natywną metodę w Javie i jak wygenerować odpowiadający jej prototyp funkcji w języku C/C++.
private native String getLine(String prompt);
Od strony języka natywnego:
javah -jni Prompt
JNIEXPORT jstring JNICALL Java_Prompt_getLine(JNIEnv *, jobject, jstring);
Referencje:http://www.codejava.net/java-core/the-java-language/native-keyword
Przypisy:http://www.codejava.net/java-core/the-java-language/native-keyword
W artykule uczestniczył Bishal Kumar Dubey. Jeśli podoba Ci się GeeksforGeeks i chciałbyś przyczynić się do jego powstania, możesz również napisać artykuł korzystając z adresu contribute.geeksforgeeks.org lub wysłać go pocztą na adres [email protected]. Zobacz, jak twój artykuł pojawia się na stronie głównej GeeksforGeeks i pomóż innym Geekom.