Paano Maipatupad ang Marker Interface Sa Java?



Ipapaikli sa iyo ng artikulong ito ang isang kagiliw-giliw na aspeto ng Mga interface na tinawag bilang Marker Interface Sa Java at susundan ito sa pagpapatupad.

Ipapaikli sa iyo ng artikulong ito ang isang nakawiwiling aspeto ng Mga Interface na tinawag bilang Marker Interface In at sundin ito sa pagpapatupad. Saklaw ang artikulong ito sa artikulong ito,

Kaya't magsimula tayo noon,





Ang interface ng marker ay isang interface na walang laman, ibig sabihin, hindi ito naglalaman ng anumang mga pamamaraan o patlang. Kilala rin ito bilang isang interface ng pag-tag at ginagamit upang ipahiwatig o ipaalam sa JVM na ang isang klase na nagpapatupad ng interface na ito ay magkakaroon ng ilang mga espesyal na pag-uugali. Ang isang mahusay na paraan upang maiuri ang code ay maaaring makamit gamit ang interface ng marker. Ang mga halimbawa ng tulad ng isang interface ay ang: Serializable, Cloneable at Remote Interface.

Ang paglipat sa artikulong ito sa Marker Interface sa Java



Serializable Interface

Ang serialization sa java ay maaaring tukuyin bilang proseso ng pag-convert ng estado ng isang bagay sa isang byte stream. Maaari itong makamit sa pamamagitan ng paggamit ng serializable interface na kung saan ay naroroon sa java.io.package. Dapat pansinin na ang lahat ng mga subtypes ng isang serializable na klase ay serializable mismo.

Halimbawa:

import java.io. * klase Pangunahing nagpapatupad Serializable {int j String s // A class konstruktor publiko Main (int j, String s) {this.j = j this.s = s}} pampublikong klase Pagsubok {public static void main (String [] args) throws IOException, ClassNotFoundException {Main obj = new Main (25, 'HelloWorld') // Serializing 'obj' FileOutputStream fos = new FileOutputStream ('pqr.txt') ObjectOutputStream oos = bagong ObjectOutputStream (fos) oos .writeObject (obj) // De-serializing 'obj' FileInputStream fis = new FileInputStream ('pqr.txt') ObjectInputStream ois = bagong ObjectInputStream (fis) Pangunahing b = (Pangunahing) ois.readObject () // down-casting object System.out.println (b.j + '' + bs) // pagsasara ng mga stream oos.close () ois.close ()}}

Output:
25 HelloWorld



Ang paglipat sa artikulong ito sa Marker Interface sa Java

Cloneable Interface:

Ang interface na ito ay matatagpuan sa java.lang package. Ang cloning ay ang mekanismo ng pagbuo ng isang kopya o isang eksaktong kopya ng isang bagay na may ibang pangalan.
Ang Cloneable Interface ay ipinatupad ng isang klase upang ipahiwatig sa object.clone () na pamamaraan na ligal para sa pamamaraan na gumawa ng isang patlang na patlang ng mga pagkakataon ng klase na iyon.
Ang isang CloneNotSupportedException ay itinapon para sa isang klase kung saan inaanyayahan ang clone na paraan nang hindi nagpapatupad ng isang cloneable interface.

Halimbawa:

i-import ang java.lang.Cloneable class javaClone ay nagpapatupad ng Cloneable {int j String s // Pagtukoy sa isang pampublikong tagabuo ng javaClone (int j, String s) {this.j = j this.s = s} // Overriding clone () na paraan @ Pag-override ng protektadong Object clone () throws CloneNotSupportedException {return super.clone ()}} public class Main {public static void main (String [] args) throws CloneNotSupportedException {javaClone c = new javaClone (18, 'HelloWorld') // cloning ' c 'and holding // new cloned object reference in b // down-casting javaClone b = (javaClone) c.clone () System.out.println (bj) System.out.println (bs)}}

Output:
18
HelloWorld

ano ang pagkakaiba sa pagitan ng c ++ at java

Ang paglipat sa artikulong ito sa Marker Interface sa Java

Remote Interface:

Ang isang malayuang bagay ay maaaring tukuyin bilang isang bagay na ang mga pamamaraan ay maaaring makuha mula sa ibang JVM, na potensyal sa ibang host. Ang interface na ito ay matatagpuan sa java.rmi package. Ang isang malayong bagay ay dapat ipatupad nang direkta o hindi direkta ang pamamaraang ito.

RMI:

Ang Remote na Pamamaraan Ang konvokasyon ay isang API na nagbibigay-daan sa isang bagay na humingi ng mga pamamaraan sa isang bagay na tumatakbo sa ibang JVM. Nagbibigay ito ng malayuang komunikasyon sa pagitan ng dalawang aplikasyon gamit ang mga sumusunod na bagay: straw at skeleton.

Matigil:

Ang isang usbong ay maaaring tukuyin bilang isang bagay na naroroon sa gilid ng kliyente at kumakatawan sa remote na bagay. Lumilikha ito ng isang bloke ng impormasyon na binubuo ng:
α Identifier ng remote na bagay
α Pangalan ng pamamaraan na kung saan ay dapat gamitin
α Mga Parameter sa remote na JVM

Balangkas:

Ang pangunahing trabaho ng bagay ng balangkas ay upang maipasa ang mga kahilingan mula sa tuod sa malayuang bagay. Bilang karagdagan, nagsasagawa ito ng mga gawaing ibinigay sa ibaba:
α Inaanyayahan nito ang nais na pamamaraan sa orihinal na remote object
α Binabasa ang tinukoy na parameter para sa remote na bagay

Ang paglipat sa artikulong ito sa Marker Interface sa Java

Mga Hakbang upang Maipatupad ang Remote Interface:

Tukuyin ang isang remote interface:

i-import ang java.rmi. * pampublikong interface na AddAll ay nagpapalawak ng Remote {public int add (int r, int s) throws RemoteException}

Dito, ang Remote interface ay pinalawig, at ang RemoteException ay idineklara sa lahat ng mga pamamaraan ng remote interface.

Ang paglipat sa artikulong ito sa Marker Interface sa Java

ano ang gamit ng mongodb

Ipatupad ang remote interface:

Mayroong dalawang paraan upang magbigay ng pagpapatupad sa remote interface:
α Palawakin ang UnicastRemoteObject na klase
α Gumamit ng paraan ng pag-exportObject () ng UnicastRemoteObject na klase

i-import ang java.rmi. * i-import ang java.rmi.server. * ang pampublikong klase na AddAllRemote ay nagpapalawak ng UnicastRemoteObject na nagpapatupad ng Adder {AddAllRemote () na nagtatapon ng RemoteException {super ()} pampubliko na idagdag (int r, int s) {return r + s}}

Gamit ang rmic (rmi compiler), lumikha ng mga bagay na usbong at kalansay.

Ang mga bagay na usbong at kalansay ay maaaring malikha sa pamamagitan ng paggamit ng rmi compiler. Inanyayahan ng tool na rmi ang tagatala ng RMI upang likhain ang mga bagay.
rmic AddAllRemote

Gamit ang tool na rmiregistry, simulan ang serbisyo sa pagpapatala.

Maaaring simulan ang serbisyo sa pagpapatala sa pamamagitan ng paggamit ng tool na rmregistry. Ginagamit ang isang default na numero ng port kung hindi tinukoy ng gumagamit.
rmiregistry 5000

Ang paglipat sa artikulong ito sa Marker Interface sa Java

mga paraan upang lumikha ng klase ng singleton sa java

Lumikha at simulan ang remote application.

import java.rmi. * import java.rmi.registry. * pampublikong klase Server {public static void main (String args []) {try {AddAll rint = new AddAllRemote () Naming.rebind ('rmi: // localhost: 5000 / sak ', straw)} catch (Exception e) {System.out.println (e)}}}

Ang remote na bagay ay nakagapos ng pangalan sak sa halimbawa sa itaas.

Ang paglipat sa artikulong ito sa Marker Interface sa Java

Lumikha at simulan ang aplikasyon ng client.

Sa halimbawang ibinigay, ang server at ang mga aplikasyon ng client ay pinapatakbo sa parehong makina. Kaya, ang paggamit ng localhost ay ginagawa.

import java.rmi. * pampublikong klase Client {public static void main (String args []) {try {AddAll rint = (AddAll) Naming.lookup ('rmi: // localhost: 5000 / sak') System.out.println (straw.add (29,18))} catch (Exception e) {}}}

Upang ma-access ang malayuang object mula sa ibang machine, dapat baguhin ang lokal na pangalan ng host sa IP Address o sa pangalan ng host kung saan matatagpuan ang remote object.

Ang isang mahusay na paraan upang maiuri ang code ay maaaring makamit gamit ang interface ng marker.

Sa gayon ay natapos na tayo sa artikulong ito. Kung nais mong matuto nang higit pa, tingnan ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online. Ang kurso sa pagsasanay at sertipikasyon ng Java J2EE at SOA ng Edureka ay idinisenyo upang sanayin ka para sa parehong core at advanced na mga konsepto ng Java kasama ang iba't ibang mga balangkas ng Java tulad ng Hibernate & Spring.

May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento ng blog na ito at babalikan ka namin sa lalong madaling panahon.