Bagaimana Melaksanakan Interface Marker Di Java?



Artikel ini akan memberi penerangan tentang aspek menarik antara muka yang dipanggil sebagai Marker Interface In Java dan menindaklanjutinya dengan pelaksanaannya.

Artikel ini akan memberi penerangan mengenai aspek menarik antara muka yang dipanggil sebagai Marker Interface In dan ikuti pelaksanaannya. Petunjuk berikut akan dibahas dalam artikel ini,

Oleh itu, mari kita mulakan,





Antaramuka penanda adalah antara muka yang kosong, iaitu tidak mengandungi kaedah atau medan apa pun. Ia juga dikenali sebagai tagging interface dan digunakan untuk menunjukkan atau memberitahu JVM bahawa kelas yang melaksanakan interface ini akan mempunyai tingkah laku khas. Kaedah yang cekap untuk mengklasifikasikan kod dapat dicapai dengan menggunakan antara muka penanda. Contoh antara muka seperti itu: Antaramuka Bersiri, Boleh Klon dan Jauh.

Bergerak dengan artikel ini pada Marker Interface di Java



Antara Muka Bersiri

Serialisasi dalam java dapat didefinisikan sebagai proses mengubah keadaan objek menjadi aliran bait. Ini dapat dicapai dengan menggunakan antara muka bersiri yang terdapat di java.io.package. Harus diingat bahawa semua subtipe dari kelas yang boleh disenaraikan secara bersiri.

Contoh:

import java.io. * class Main implement Serializable {int j String s // A class buildor public Main (int j, String s) {this.j = j this.s = s}} ujian kelas awam {public static void main (String [] args) melemparkan IOException, ClassNotFoundException {Main obj = new Main (25, 'HelloWorld') // Serializing 'obj' FileOutputStream fos = FileOutputStream baru ('pqr.txt') ObjectOutputStream oos = baru ObjectOutputStream (fos) oos .writeObject (obj) // De-serializing 'obj' FileInputStream fis = new FileInputStream ('pqr.txt') ObjectInputStream ois = ObjectInputStream baru (fis) Utama b = (Utama) ois.readObject () // objek bawah-casting System.out.println (b.j + '' + bs) // menutup aliran oos.close () ois.close ()}}

Pengeluaran:
25 HelloWorld



Bergerak dengan artikel ini pada Marker Interface di Java

Antaramuka yang boleh diklon:

Antara muka ini boleh didapati dalam pakej java.lang. Pengklonan adalah mekanisme menghasilkan replika atau salinan tepat objek dengan nama yang berbeza.
Antaramuka Cloneable dilaksanakan oleh kelas untuk menunjukkan kepada metode object.clone () bahawa sah bagi kaedah untuk membuat salinan bidang-untuk-bidang dari kelas tersebut.
CloneNotSupportedException dilemparkan untuk kelas yang menggunakan kaedah klon tanpa melaksanakan antara muka yang dapat diklon.

Contoh:

import java.lang.clavaable class javaClone mengimplementasikan Cloneable {int j String s // Mendefinisikan javaClone awam konstruktor kelas (int j, String s) {this.j = j this.s = s} // Kaedah klon Overriding () @ Mengalahkan klon Objek terlindung () melemparkan CloneNotSupportedException {return super.clone ()}} kelas awam Utama {public static void main (String [] args) membuang CloneNotSupportedException {javaClone c = javaClone baru (18, 'HelloWorld') // kloning ' c 'dan menahan // rujukan objek kloning baru dalam b // javaClone down-casting b = (javaClone) c.clone () System.out.println (bj) System.out.println (bs)}}

Pengeluaran:
18
Hai dunia

Bergerak dengan artikel ini pada Marker Interface di Java

Antara Muka Jauh:

Objek jauh dapat didefinisikan sebagai objek yang kaedahnya dapat dipanggil dari JVM yang berbeza, berpotensi pada host lain. Antaramuka ini terdapat dalam pakej java.rmi. Objek jarak jauh mesti melaksanakan kaedah ini secara langsung atau tidak langsung.

RMI:

Konvokesyen Kaedah Jauh adalah API yang membolehkan objek memanggil kaedah pada objek yang berjalan di JVM yang berbeza. Ini menyediakan komunikasi jarak jauh antara dua aplikasi menggunakan objek berikut: rintisan dan kerangka.

Stub:

Rintisan dapat didefinisikan sebagai objek yang ada di sisi klien dan mewakili objek terpencil. Ini membuat blok maklumat yang terdiri daripada:
α Pengecam objek terpencil
α Kaedah yang hendak digunakan
α Parameter ke JVM jauh

Kerangka:

Tugas utama objek kerangka adalah menyampaikan permintaan dari rintisan ke objek jauh. Di samping itu, ia melaksanakan tugas yang diberikan di bawah:
α Ia menggunakan kaedah yang dikehendaki pada objek jauh yang asal
α Membaca parameter yang ditentukan untuk objek jauh

Bergerak dengan artikel ini pada Marker Interface di Java

Langkah-langkah untuk Melaksanakan Antaramuka Jauh:

Tentukan antara muka jauh:

import java.rmi. * antara muka awam AddAll meluaskan Jauh {int int publik (int r, int s) melemparkan RemoteException}

Di sini, antara muka Jauh diperluas, dan RemoteException dinyatakan dengan semua kaedah antara muka jarak jauh.

Bergerak dengan artikel ini pada Marker Interface di Java

Laksanakan antara muka jarak jauh:

Terdapat dua cara untuk menyediakan pelaksanaan ke antara muka jarak jauh:
α Memanjangkan kelas UnicastRemoteObject
α Gunakan kaedah exportObject () kelas UnicastRemoteObject

import java.rmi. * import java.rmi.server. * kelas awam AddAllRemote meluaskan UnicastRemoteObject melaksanakan Adder {AddAllRemote () melemparkan RemoteException {super ()} int int publik (int r, int s) {return r + s}}

Dengan menggunakan rmic (rmi compiler), buat objek rintisan dan kerangka.

Objek rintisan dan kerangka dapat dibuat dengan menggunakan penyusun rmi. Alat rmi meminta penyusun RMI untuk membuat objek.
rmic AddAllRemote

mempunyai vs adalah java

Dengan menggunakan alat rmiregistry, mulakan perkhidmatan pendaftaran.

Perkhidmatan pendaftaran boleh dimulakan dengan menggunakan alat rmregistry. Nombor port lalai digunakan jika tidak ditentukan oleh pengguna.
rmiregistry 5000

Bergerak dengan artikel ini pada Marker Interface di Java

Buat dan mulakan aplikasi jarak jauh.

import java.rmi. * import java.rmi.registry. * pelayan kelas awam {public static void main (String args []) {cuba {AddAll stub = new AddAllRemote () Naming.rebind ('rmi: // localhost: 5000 / sak ', stub)} tangkapan (Pengecualian e) {System.out.println (e)}}}

Objek jarak jauh diikat oleh nama sak dalam contoh di atas.

Bergerak dengan artikel ini pada Marker Interface di Java

Buat dan mulakan aplikasi pelanggan.

Dalam contoh yang diberikan, aplikasi pelayan dan klien dijalankan pada mesin yang sama. Oleh itu, penggunaan localhost sedang dibuat.

import java.rmi. * Pelanggan kelas awam {public static void main (String args []) {cuba {AddAll stub = (AddAll) Naming.lookup ('rmi: // localhost: 5000 / sak') System.out.println (stub.add (29,18))} tangkapan (Pengecualian e) {}}}

Untuk mengakses objek jauh dari mesin lain, nama host tempatan mesti diubah menjadi Alamat IP atau nama host di mana objek jauh berada.

Kaedah yang cekap untuk mengklasifikasikan kod dapat dicapai dengan menggunakan antara muka penanda.

Oleh itu, kita telah mengakhiri artikel ini. Sekiranya anda ingin mengetahui lebih lanjut, lihat di oleh Edureka, sebuah syarikat pembelajaran dalam talian yang dipercayai. Kursus latihan dan pensijilan Java J2EE dan SOA Edureka dirancang untuk melatih anda untuk konsep Java teras dan maju bersama dengan pelbagai kerangka kerja Java seperti Hibernate & Spring.

Ada soalan untuk kami? Sila sebutkan di bahagian komen blog ini dan kami akan menghubungi anda secepat mungkin.