Изворна кључна реч на Јави - Како функционира кључна реч Нативе? (Пример)

Преглед садржаја:

Anonim

Увод о кључној речи на језику Јава

Изворна кључна реч делује као веза између језика ЈАВА и комада кода или библиотеке написаних на различитим језицима, осим ЈАВА која може зависити од машине на којој радите. Ако се матична кључна реч примјени на методу, то значи да ће се метода имплементирати коришћењем матичног кода написаног на неком другом језику (попут Ц или Ц ++) преко ЈНИ (ЈАВА нативе интерфаце).

Синтакса

Синтакса нативног кода једнака је дефиницији нормалне функције са кључном речју која је додата на почетку функције.

На пример:

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

Овде је јавност модификатор приступа. То би требало бити јавно да би га могла користити друга датотека. Низ је врста повратних података функције. То може бити цео број, знак или логички језик, зависно од кључне речи. Параметар просљеђен овој функцији је и низ података типа података. Све треба држати подкласе.

Након декларације функције, ову функцију називамо помоћу креираног објекта и учитане библиотеке.

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

Претходно дефинисана библиотека треба прво бити учитана и н њен објект створен. Уз помоћ овог објекта назива се нативна функција.

Како функционира кључна реч Нативе?

Требало би да постоје две датотеке. Једна садржи ЈАВА код, док друга треба имати наслеђени Ц / Ц ++. За позивање наслијеђеног кода користиће се Јава код. Овај наслијеђени код ће комуницирати с хардвером и вратити очекивани излаз.

Када наслијеђени код комуницира са хардвером, онда неће слиједити смјернице које је ЈАВА поставила. Овај код ће извршити жељену обраду како би добио излаз и проследио резултате ЈНИ. Јава изворно сучеље ће затим проверити у свом директоријуму који садржи сва правила која се односе на матични код (Ово се налази под датотеком под називом јавах.еке у СДК-у). ЈНИ је осмишљен као део Јава алата. Након ове обраде, ЈАВА ће објавити резултате на самом језику ЈАВА. Када стварамо програм у ЈАВА-и, тада морамо бити сигурни да постоји веза варијабле / протока података између датотеке ЈАВА и наслијеђене датотеке, тако да постоји несметан проток података између оба.

У наставку су наведени кораци који објашњавају како користити нативне кључне речи:

  1. Напишите ЈАВА код који садржи изворну методу, учитава се дељена библиотека и сачувајте је помоћу „филенаме.ЈАВА“.
  2. Саставите ЈАВА код и претворите га у бајт код.
  3. Направите Ц / Ц ++ датотеку заглавља која садржи изворни функцијски потпис који би требало да буде позван.
  4. Врите Ц / Ц ++ код има примену изворне методе.
  5. Покрените извршну датотеку ЈАВА да бисте видели резултате.

Пример

Требали бисмо написати код у програму Ецлипсе и покренути га да бисмо створили библиотеку помоћу које ће се онда Ц код имплементирати.

Шифра : пакет цом.слацкерОне;

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

Након што сте овај код сачували у новој „класи“ јава пројекта. Морамо да поставимо окружење за покретање да бисмо генерисали заглавље.

Када то покренемо, требало би да се генерише библиотека.

Излаз:

Овде смо креирали заглавље из јава кода који ће играти као изворни код и јава језик.

Предности изворне кључне речи у Јави

  1. То ЈАВА пружа додатну предност у интеракцији са кодом написаним на другим језицима и смањује рад да би исти код био написан у ЈАВА, чиме се смањује сувишност кода.
  2. Побољшава укупне перформансе кода. Како је код написан на другим језицима, може бити бржи када ради са машинским језиком у поређењу с ЈАВА. Тада можемо користити програм ЈАВА за позивање овог кода.
  3. Користећи овај приступ, можемо директно позивати системске позиве. Смањење вероватноће спољних сметњи и побољшање брзине извршења кода.
  4. Можете динамички позвати претходно учитану библиотеку (написану на било којем другом језику осим ЈАВА) користећи произвољни код вожње написан у ЈАВА и још увек добити одговор у ЈАВА.
  5. Омогућује ЈАВА-у приступ до хардверских ресурса који се могу користити само на другим језицима.
  6. У случају да већ имате надоградњу кода који зависи од платформе за вашу апликацију и чије функције нису подржане преко ЈАВА, у том случају можемо имати матични код и повезати овај матични код са ЈАВА путем нативне кључне речи.

Правила

  1. Прије назива методе треба користити нативну кључну ријеч.
  2. Декларација нативне методе нема тела и треба завршити точком са зарезом јер ове методе нису дефинисане у ЈАВА, али су присутне на језику Ц / Ц ++.
  3. Нативне методе се не могу декларирати као апстрактна метода.
  4. Будући да не постоји сигурност да ли је претходни стари код написан у складу са ИЕЕЕ 754 стандардом (ИЕЕЕ стандард за аритметику с плутајућом тачком је технички стандард за аритметику с помичним зарезом који је 1985. установио Институт инжењера електротехнике и електронике), ове нативне методе не можемо прогласити строгим.
  5. Спецификацију Јава Нативе Интерфаце (ЈНИ) дизајнирала је ЈАВА како би дефинисала правила и декларације за примену изворних метода, попут конверзије типова података између Јаве и матичног кода.

Закључак

Изворна кључна реч је која премошћује јаз између матичних језика и ЈАВА. Ово се може користити као критична веза ако је интеракција нашег софтвера са хардвером већа за добијање ефикасног кода користећи претходно постојећи код. То чини рад на имплементацији мањим у поређењу с дизајнирањем новог апликацијског кода испочетка гдје год је то могуће избјећи.

Препоручени чланци

Ово је водич за Нативе кључну реч на Јави. Овде смо расправљали о томе како кључна реч нативе функционише са примерима, предностима и правилима. Можда ћете такође погледати следеће чланке да бисте сазнали више -

  1. ЈТаббедПане на Јави
  2. Заштићена кључна реч у Јави
  3. Јава Виртуал Мацхине
  4. Свинг компоненте на Јави
  5. Ц ++ Кључне речи