Kata kunci asli bertindak sebagai pautan antara bahasa JAVA dan sekumpulan kod atau pustaka yang ditulis dalam bahasa berbeza kecuali untuk JAVA, yang mungkin bergantung pada mesin yang anda kendalikan. Jika kata kunci asli digunakan pada kaedah, itu bermakna kaedah itu akan dilaksanakan menggunakan kod asli yang ditulis dalam beberapa bahasa lain (seperti C atau C++) melalui JNI (antara muka asli JAVA).
Sintaks kod asli adalah sama dengan definisi fungsi biasa, dengan kata kunci “asli” ditambahkan pada permulaan fungsi.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Contohnya:
public class testing {public native String testMethod (String parameter);}
Di sini orang ramai ialah pengubah suai akses. Ia harus terbuka supaya fail lain boleh menggunakannya. Rentetan ialah jenis data pulangan bagi fungsi tersebut. Ia boleh menjadi integer, aksara atau Boolean bergantung pada kata kunci. Parameter yang dihantar kepada fungsi ini adalah daripada rentetan jenis data juga. Semuanya harus disimpan di bawah kelas.
Selepas pengisytiharan fungsi, kami memanggil fungsi ini melalui objek yang dibuat dan pustaka dimuatkan.
public static void main(String[] args) { System.loadLibrary("testing"); testing testingnew = new testing(); String output = testingnew.stringMethod("NATIVE"); }
Pustaka yang ditakrifkan di atas hendaklah dimuatkan dahulu, dan n objeknya dicipta. Dengan bantuan objek ini, fungsi asli dipanggil.
Sepatutnya ada dua fail. Satu mengandungi kod JAVA, manakala satu lagi harus mempunyai kod warisan C/C++. Kod Java akan digunakan untuk memanggil kod warisan. Kod warisan ini akan berinteraksi dengan perkakasan dan mengembalikan output yang dijangkakan.
Apabila kod warisan berinteraksi dengan perkakasan, maka ia tidak akan mengikut garis panduan yang ditetapkan oleh JAVA. Kod ini akan melakukan pemprosesan yang dikehendaki untuk mendapatkan output dan menghantar keputusan kepada JNI. Antara muka asli Java kemudiannya akan menyemak dalam direktorinya yang mengandungi semua peraturan yang berkaitan dengan kod asli (Ini terdapat di bawah fail yang dipanggil javah.exe dalam SDK). JNI direka bentuk sebagai sebahagian daripada kit alat Java. Selepas pemprosesan ini, JAVA akan menerbitkan output dalam bahasa JAVA itu sendiri. Apabila kita mencipta program JAVA, kita mesti memastikan terdapat pautan pembolehubah/ aliran data antara fail JAVA dan fail warisan supaya terdapat aliran data yang lancar antara kedua-duanya.
Langkah-langkah menerangkan cara menggunakan kata kunci asli diberikan di bawah:
Kita harus menulis kod dalam Eclipse dan menjalankan kod untuk mencipta pustaka menggunakan kod C kemudiannya akan dilaksanakan.
Kod: pakej 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); } }
Selepas menyimpan kod ini dalam "kelas" baharu projek java, kami perlu menyediakan persekitaran larian untuk menjana fail pengepala.
Apabila kita akan menjalankan ini, kita sepatutnya mendapatkan perpustakaan yang dijana.
Output:
Di sini kami mencipta fail pengepala daripada kod java, yang akan memautkan kod asli dan bahasa java.
Di bawah adalah beberapa kelebihannya.
Peraturan untuk kata kunci asli adalah seperti berikut.
Kata kunci asli ialah yang merapatkan jurang antara bahasa ibunda dan JAVA. Ini boleh digunakan sebagai pautan kritikal jika interaksi perisian kami dengan perkakasan lebih cekap dalam menggunakan kod sedia ada. Ia menjadikan pelaksanaan kerja lebih rendah berbanding dengan mereka bentuk kod aplikasi baharu dari awal di mana sahaja ia boleh dielakkan.
Atas ialah kandungan terperinci Kata kunci asli dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!