Uvod o izvornoj ključnoj riječi na Javi
Izvorna ključna riječ djeluje kao poveznica između jezika JAVA i komada koda ili biblioteke napisanih na različitim jezicima, osim JAVA-e koji može ovisiti o stroju na kojem radite. Ako se nativna ključna riječ primijeni na metodu, to znači da će se metoda primijeniti korištenjem izvornog koda napisanog na nekom drugom jeziku (poput C ili C ++) putem JNI (izvornog sučelja JAVA).
Sintaksa
Sintaksa nativnog koda jednaka je definiciji normalne funkcije s ključnom riječi "native" koja je dodana na početku funkcije.
Na primjer:
Public class testing
(public native String testMethod (String parameter);)
Ovdje je javnost modifikator pristupa. Treba biti javan tako da ga može koristiti druga datoteka. Niz je vrsta povratnih podataka funkcije. Ovisno o ključnoj riječi može biti cijeli, znakovni ili logični. Parametar prosljeđen ovoj funkciji je i niz podataka. Sve treba držati podklase.
Nakon deklaracije funkcije, ovu funkciju nazivamo pomoću objekta stvorenog i učitane biblioteke.
public static void main(String() args)
(
System.loadLibrary("testing");
testing testingnew = new testing();
String output = testingnew.stringMethod("NATIVE");
)
Prethodno definirana biblioteka trebala bi se prvo učitati i stvoriti n njezin objekt. Uz pomoć ovog objekta naziva se nativna funkcija.
Kako funkcionira ključna riječ Native?
Trebale bi postojati dvije datoteke. Jedan sadrži JAVA kôd, a drugi treba imati naslijeđeni C / C ++. Za pozivanje naslijeđenog koda koristit će se Java kod. Taj će naslijeđeni kod komunicirati s hardverom i vratiti očekivani izlaz.
Kad naslijeđeni kôd komunicira s hardverom, tada neće slijediti smjernice JAVA. Ovaj kôd će izvršiti željenu obradu kako bi se dobio izlaz i proslijedili rezultati JNI. Java izvorno sučelje će tada provjeriti u svom direktoriju koji sadrži sva pravila koja se odnose na matični kod (ovo se nalazi pod datotekom pod nazivom javah.exe u SDK-u). JNI je zamišljen kao dio Java alata. Nakon ove obrade, JAVA će objaviti rezultate na samom jeziku JAVA. Kada stvaramo program u JAVA-i, tada moramo biti sigurni da postoji varijabilna veza / protok podataka između datoteke JAVA i naslijeđene datoteke, tako da postoji nesmetan protok podataka između oba.
U nastavku su navedeni koraci koji objašnjavaju kako koristiti izvorne ključne riječi:
- Napišite JAVA kôd koji sadrži izvornu metodu, učitava se zajednička biblioteka i spremite je pomoću "filename.JAVA".
- Sastavite JAVA kôd i pretvorite ga u bajt kod.
- Napravite C / C ++ datoteku zaglavlja koja sadrži izvorni potpis funkcije koji bi trebao biti pozvan.
- Pisati C / C ++ kod ima implementaciju izvorne metode.
- Pokrenite izvršnu datoteku JAVA da biste vidjeli rezultate.
Primjer
Kôd bismo trebali napisati u programu Eclipse i pokrenuti ga da bismo stvorili knjižnicu pomoću koje će se tada provoditi C kôd.
Šifra : paket com.slackerOne;
public class JPP (
public static native void pAccess();
public static native int pRead();
public static native void pWrite(int port, int output);
static(
System.loadLibrary("JPPlibs");
)
public void jAccess()(
JPP.pAccess();
)
public int jRead()(
return JPP.pRead();
)
public void jWrite(int port, int output)(
JPP.pWrite(port, output);
)
)
Nakon što spremite ovaj kôd u novu "klasu" java projekta. Moramo postaviti okruženje za pokretanje da bismo generirali datoteku zaglavlja.
Kad to pokrenemo, trebalo bi stvoriti biblioteku.
Izlaz:
Ovdje smo stvorili zaglavlje datoteke iz java koda koja će djelovati kao poveznica između izvornog koda i java jezika.
Prednosti izvorne ključne riječi u Javi
- To JAVA pruža dodatnu prednost u interakciji s kodom napisanim na drugim jezicima i smanjuje rad da isti kod bude napisan u JAVA, čime se smanjuje suvišnost koda.
- Poboljšava ukupnu učinkovitost koda. Kako je kod napisan na drugim jezicima, može biti brži kada radi s strojnim jezikom u odnosu na JAVA. Tada možemo koristiti program JAVA za pozivanje ovog koda.
- Pomoću ovog pristupa izravno možemo upućivati sistemske pozive. Smanjenje vjerojatnosti vanjskih smetnji i poboljšanje brzine izvršenja koda.
- Možete dinamički nazvati unaprijed učitanu biblioteku (napisanu na bilo kojem drugom jeziku osim JAVA) koristeći proizvoljni kod vožnje napisan u JAVA i još uvijek dobiti odgovor u JAVA.
- Omogućuje JAVA-u dostupnost hardverskih resursa koji se mogu koristiti samo na drugim jezicima.
- U slučaju da se za vašu aplikaciju već nadograđuje kôd koji ovisi o platformi i čije značajke nisu podržane putem JAVA, u tom slučaju možemo imati matični kod i povezati taj izvorni kod s JAVA putem nativne ključne riječi.
pravila
- Prije naziva metode treba koristiti nativnu ključnu riječ.
- Deklaracija izvorne metode nema tijelo i trebala bi završiti točkom sa zarezom jer ove metode nisu definirane u JAVA, ali su prisutne na jeziku C / C ++.
- Nativne metode se ne mogu deklarirati kao apstraktna metoda.
- Budući da nije sigurno je li prethodni stari kod napisan u skladu s IEEE 754 standardom (IEEE standard za aritmetiku s plutajućom tačkom je tehnički standard za aritmetiku s pomičnim zarezom koji je 1985. uspostavio Institut inženjera elektrotehnike i elektronike), ne možemo ove nativne metode proglasiti strogim.
- Specifikaciju Java Native Interface (JNI) dizajnirala je JAVA kako bi definirala pravila i deklaracije za provedbu nativnih metoda, poput pretvorbe vrsta podataka između Jave i izvornog koda.
Zaključak
Izvorna ključna riječ je koja premošćuje jaz između izvornih jezika i JAVA. Ovo se može koristiti kao kritična veza ako je interakcija našeg softvera s hardverom veća za dobivanje učinkovitog koda pomoću prethodno postojećeg koda. To čini rad na implementaciji manjim u usporedbi s dizajniranjem novog aplikacijskog koda ispočetka, gdje god je to moguće izbjeći.
Preporučeni članci
Ovo je vodič za izvornu ključnu riječ na Javi. Ovdje smo raspravljali o načinu funkcioniranja ključne riječi Native s primjerima, prednostima i pravilima. Možete također pogledati sljedeće članke da biste saznali više -
- JTabbedPane na Javi
- Zaštićena ključna riječ u Javi
- Java virtualni stroj
- Swing komponente na Javi
- C ++ Ključne riječi