Kako uporabiti skrivanje metod v Javi



V tem članku boste našli podrobno in izčrpno znanje o tem, kako s primeri uporabiti skrivanje metod v Javi.

V , previdni morate biti pri možnosti skrivanja metode. Metoda, ustvarjena z istim tipom in podpisom v podrazredu, lahko skriva spremenljivke v nadrazredu. V tem članku bomo skrivanje metod v Javi razumeli na naslednji način:

Kaj je skrivanje metode?

Skrivanje metod je funkcionalno zelo podobno metodam, ki prevladajo. Pri razveljavitvi, če ustvarite metodo v podrazredu z istim tipom in podpisom v podrazredu, potem omogoča klicanje metod na podlagi vrste primerka.





Logotip Java

sklad in kup v javi

Pri statičnih metodah istega tipa inpodpis v superrazredu in podrazredu, nato metoda v podrazredu skrije metodo v nadrazredu.



Metoda Skrivanje kode Java

paket com.test class Nadrejeni {public static void foo () {System.out.println ('Metoda znotraj foo v nadrejenem razredu')} public void bar () {System.out.println ('Metoda znotraj vrstice v nadrejenem razredu' )}} razred Child razširi nadrejeni {// Skrivanje javne statične void foo () {System.out.println ('Metoda foo znotraj otroškega razreda')}} // Preglasitev javne void vrstice () {System.out.println (' Metoda znotraj vrstice v podrejenem razredu ')}} koda javnega razreda {public static void main (String [] args) {Nadrejeni p = nov nadrejeni () Nadrejeni c = nov podrejeni () System.out.println (' **** ************ Skrivanje metode ******************* ') p.foo () // To bo priklicalo metodo v nadrejenem razredu c .foo () // To bo poklicalo metodo v nadrejenem razredu System.out.println ('**************** Preglasitev metode ************ ******* ') p.bar () // To bo klicalo metodo v nadrejenem razredu c.bar () // To bo klicalo metodo v podrejenem razredu}}

Izhod:

V zgornjemna primer, podrazred Child ima statično metodo foo () z enakim imenom in podpisom kot statična metoda v nadrejenem nadrejenem. Ko pokličemo p.foo () in c.foo (), v starševskem razredu pokliče metodo foo ()



za razliko od metode overriding, kjer p.bar () prikliče metodo v nadrejenem razredu, c.bar () pa metodo v nadrejenem razredu.

hadoop skrbniške vloge in odgovornosti

Ker se statične metode razrešijo v času prevajanja, medtem ko je prevajanje skladno s prvo nadrejenim razredom in nato z nadrejenim razredom, tega ne moremoimajo dve statični metodi z istim imenom, obe metodi foo sta razrešeni kot metoda foo () nadrejenega razreda.

razlika med preglasitvijo in preobremenitvijo v javi

Povzetek

Če ima podrazred statično metodo z enakim imenom in podpisom kot statična metoda v superrazredu, bo metoda v superrazredu poklicana ne glede na to, ali je poklicana iz podrejenega razreda ali nadrejenega razreda.

V primeru razveljavitve metode preglasimo metodo iz nadrejenega razreda, tj. Če ima podrazred ne-statično metodo z enakim imenom in podpisom kot ne-statična metoda v nadrazredu, se pokličejo ustrezne metode, odvisno od uporabljene reference, tj. nadrejenega razreda se uporablja za klicanje nestatične metode v nadrejenem razredu, nato se uporabi metoda iz nadrejenega razreda in če se objekt podrejenega razreda uporablja za klicanje ne-statične metode v nadrejenem razredu, se uporabi metoda iz podrejenega razreda

S tem smo prišli do konca tega članka Skrivanje metode v Javi. Oglejte si Edureka, zaupanja vredno podjetje za spletno učenje z mrežo več kot 250.000 zadovoljnih učencev, razširjenih po vsem svetu. Edurekin tečaj za usposabljanje in certificiranje Java J2EE in SOA je namenjen študentom in strokovnjakom, ki želijo biti razvijalec Java.

Imate vprašanje za nas? Prosimo, omenite to v oddelku za komentarje tega bloga 'Skrivanje metod v Javi', mi se vam bomo oglasili v najkrajšem možnem času.