Izvorna ključna beseda na Javi - Kako deluje ključna beseda Native? (Primer)

Kazalo:

Anonim

Uvod o ključni besedi Native v Javi

Naravna ključna beseda deluje kot povezava med jezikom JAVA in kosom kode ali knjižnice, napisana v različnih jezikih, razen JAVA, ki je lahko odvisna od naprave, s katero delate. Če je ključna ključna beseda uporabljena za metodo, potem to pomeni, da bo metoda izvedena z uporabo izvorne kode, napisane v nekem drugem jeziku (na primer C ali C ++) prek JNI (izvorni vmesnik JAVA).

Sintaksa

Sintaksa izvorne kode je enaka običajni definiciji funkcije s ključno besedo »native«, ki je bila dodana na začetku funkcije.

Na primer:

Public class testing
(public native String testMethod (String parameter);)

Tukaj je javnost modifikator dostopa. Javna mora biti javna, da jo lahko uporabi druga datoteka. Niz je vrsta vrnjenih podatkov funkcije. Odvisno od ključne besede je lahko celo število, znak ali logična različica. Parameter, posredovan tej funkciji, je tudi niz podatkovnih vrst. Vse je treba ohraniti podrazredno.

Po deklaraciji funkcije pokličemo to funkcijo preko ustvarjenega predmeta in naložene knjižnice.

public static void main(String() args)
(
System.loadLibrary("testing");
testing testingnew = new testing();
String output = testingnew.stringMethod("NATIVE");
)

Najprej se naloži knjižnica, določena zgoraj, in ustvari n njen objekt. S pomočjo tega predmeta se pokliče naravna funkcija.

Kako deluje ključna beseda Native?

Dve datoteki morata biti. Ena vsebuje kodo JAVA, druga pa naj bi imela starejšo kodo C / C ++. Java koda bo uporabljena za klic starejše kode. Ta podedovana koda bo v interakciji s strojno opremo in vrnila pričakovani rezultat.

Ko starejši kôd deluje s strojno opremo, potem ne bo sledil smernicam JAVA. Ta koda bo opravila želeno obdelavo, da bo dobila izhod in rezultate posredovala JNI. Nato vmesnik Java preveri v svojem imeniku, ki vsebuje vsa pravila, ki se nanašajo na izvorno kodo (To spada pod datoteko z imenom javah.exe v SDK). JNI je zasnovan kot del orodja Java. Po tej obdelavi bo JAVA objavila izide v samem jeziku JAVA. Ko ustvarjamo program v JAVA, moramo poskrbeti, da je med datoteko JAVA in podedovano datoteko povezava spremenljivke / pretoka podatkov, tako da bo nemoten pretok podatkov med obema.

Spodaj so podani koraki za razlago uporabe izvornih ključnih besed:

  1. Vpišite kodo JAVA, ki vsebuje izvorno metodo, knjižnico v skupni rabi in jo shranite z uporabo "filename.JAVA".
  2. Sestavite kodo JAVA in jo pretvorite v bajt kodo.
  3. Ustvari glavno datoteko C / C ++, ki vsebuje izvorni podpis funkcije, ki ga je treba poklicati.
  4. Pišite kodo C / C ++, ki ima izvorno metodo.
  5. Za ogled rezultatov zaženite izvedljivo datoteko JAVA.

Primer

Kodo bi morali zapisati v Eclipse in zagnati kodo, da bi ustvarili knjižnico, s katero bomo nato izvedli kodo C.

Koda : 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);
)
)

Ko shranite to kodo v novi "razred" projekta java. Za ustvarjanje datoteke za glavo moramo postaviti okolje za zagon.

Ko bomo to zagnali, bi morali ustvariti knjižnico.

Izhod:

Tu smo ustvarili glavno datoteko iz kode java, ki bo delovala kot povezava med izvorno kodo in jezikom Java.

Prednosti izvorne ključne besede v Javi

  1. JAVA ponuja dodatno prednost pri interakciji s kodo, napisano v drugih jezikih, in zmanjšuje delo, da je enaka koda zapisana v JAVA, kar zmanjšuje odvečnost kode.
  2. Izboljša splošno delovanje kode. Ker je koda napisana v drugih jezikih, je lahko hitrejša, če deluje s strojnim jezikom v primerjavi z JAVA. Nato lahko s programom JAVA pokličemo to kodo.
  3. S tem pristopom lahko neposredno kličemo sistemske klice. Zmanjšanje verjetnosti zunanjih motenj in izboljšanje hitrosti izvrševanja kode.
  4. Dinamično lahko pokličete vnaprej naloženo knjižnico (napisano v katerem koli drugem jeziku kot JAVA) s poljubno vozniško kodo, napisano v JAVA, in še vedno dobite odgovor v JAVA.
  5. JAVA omogoča dostop do strojnih virov, ki so na voljo za uporabo le v drugih jezikih.
  6. Če imate za svojo aplikacijo že sestavljeno kodo, ki je odvisna od platforme, in katere funkcije niso podprte prek JAVA, lahko imamo v tem primeru izvorno kodo in povežemo to izvorno kodo z JAVA prek matične ključne besede.

Pravila

  1. Pred imenom metode je treba uporabiti izvorno ključno besedo.
  2. Deklaracija izvirne metode nima telesa in se mora končati s podpičjem, saj te metode niso definirane v JAVA, vendar so prisotne v jeziku C / C ++.
  3. Native metode ni mogoče razglasiti za abstraktno metodo.
  4. Ker ni nobene gotovosti, ali je prejšnja stara koda napisana v skladu s standardom IEEE 754 (standard IEEE za aritmetiko s plavajočo vejico je tehnični standard za aritmetiko s plavajočo vejico, ki ga je leta 1985 ustanovil Inštitut inženirjev elektrotehnike in elektronike), teh domačih metod ne moremo razglasiti za strogo.
  5. Specifikacija Java Native Interface (JNI) je zasnovana s strani JAVA za določitev pravil in deklaracij za izvajanje izvornih metod, kot je pretvorba vrst podatkov med Java in izvorno kodo.

Zaključek

Naravna ključna beseda je tisti, ki premosti vrzel med domačimi jeziki in JAVA. To lahko uporabimo kot kritično povezavo, če je interakcija naše programske opreme s strojno opremo bolj učinkovita, če uporabimo že obstoječo kodo. Delo pri izvajanju je manjše v primerjavi z načrtovanjem nove kode aplikacije iz nič, kjer koli bi se ji bilo mogoče izogniti.

Priporočeni članki

To je vodnik za ključno besedo Native v Javi. Tukaj razpravljamo, kako ključna beseda Native deluje s primeri, prednostmi in pravili. Za več informacij si lahko ogledate tudi naslednje članke -

  1. JTabbedPane v Javi
  2. Zaščitena ključna beseda v Javi
  3. Java Virtual Machine
  4. Swing Components na Javi
  5. C ++ Ključne besede