Kaip įgyvendinti metodo slėpimą „Java“



Šis straipsnis suteiks jums išsamių ir išsamių žinių apie tai, kaip įdiegti „Java“ metodų slėpimą su pavyzdžiais.

Į , turite būti atsargūs dėl galimybės slėpti metodą. Metodas, sukurtas tuo pačiu tipu ir parašu pogrupyje, gali slėpti kintamuosius superklase. Šiame straipsnyje mes suprasime „Java“ slėpimo metodą tokiu būdu:

Kas yra metodo slėpimas?

Metodo slėpimas yra funkciškai labai panašus į viršijantį metodą. Nepaisant to, jei subklasėje kuriate metodą su tuo pačiu tipu ir parašu subklasėje, tai leidžia iškviesti metodus pagal egzemplioriaus tipą.



„Java“ logotipas

Taikant to paties tipo statinius metodus irparašas superklasėje ir subklasėje, tada metodas poklasyje slepia metodą superklasėje.



Metodas „Java“ kodo slėpimas

paketas com.test klasė Tėvas {public static void foo () {System.out.println ('Inside foo metodas tėvų klasėje')} public void bar () {System.out.println ('Vidinės juostos metodas tėvų klasėje') )}} klasė Vaikas pratęsia tėvą {// Slėpti viešą statinį negaliojančią foo () {System.out.println ('Inside foo metodas vaikų klasėje')} // Visuomenės tuštumo juostos nepaisymas () {System.out.println (' Vidinio juostos metodas vaikų klasėje ')}} public class Code {public static void main (String [] args) {Parent p = new Parent () Parent c = new Child () System.out.println (' **** ************ Metodo slėpimas ********************) p.foo () // Tai iškvies metodą tėvų c klasėje .foo () // Tai iškvies metodą tėvų klasėje System.out.println ('***************** metodas, viršijantis ************ ******* ') p.bar () // Tai iškvies metodą tėvų klasėje c.bar () // Tai iškvies metodą vaiko klasėje}}

Išvestis:

dviejų skaičių pridėjimas java

PirmiauPavyzdžiui, pogrupio vaikas turi statinį metodą foo (), turintį tą patį pavadinimą ir parašą kaip ir statinis metodas superklasėje „Tėvai“. Kai mes vadiname p.foo () ir c.foo (), tai tėvų klasėje vadina foo () metodą



skirtingai nei metodas, viršijantis, kai p.bar () kviečia metodą tėvų klasėje, o c.bar () - metodą vaiko klasėje.

Kadangi statiniai metodai išsprendžiami kompiliavimo metu, o laikomasi pirmosios tėvų klasės, o paskui - vaikų klasės, mes negalimeturi du statinius metodus tuo pačiu pavadinimu, abu foo metodai išsprendžiami kaip tėvų klasės foo () metodas.

Santrauka

Jei poklasyje yra statinis metodas su tuo pačiu pavadinimu ir parašu kaip ir statinis metodas superklasėje, tai superklasės metodas bus iškviečiamas, neatsižvelgiant į tai, ar jis iškviestas iš vaikų klasės, ar iš tėvų klasės.

eikite į c ++

Jei metodas yra nepaisomas, mes nepaisome pagrindinės klasės metodo, ty jei poklasyje yra ne statinis metodas su tuo pačiu pavadinimu ir parašu kaip ir ne statinis metodas superklase, atitinkami metodai yra kviečiami, atsižvelgiant į naudojamą nuorodą, ty jei objektas iš tėvų klasės yra naudojamas iškviesti ne statinį metodą tėvų klasėje, tada naudojamas metodas iš tėvų klasės, o jei vaiko klasės objektas naudojamas iškviesti ne statinį metodą vaikų klasėje, naudojamas metodas iš vaikų klasės.

Tuo mes baigiame šį metodą, pasislėpdami „Java“ straipsnyje. Patikrinkite sukūrė „Edureka“ - patikima internetinė mokymosi įmonė, turinti daugiau nei 250 000 patenkintų besimokančiųjų tinklą. „Edureka“ mokymai ir sertifikavimo kursai „Java J2EE“ ir „SOA“ skirti studentams ir specialistams, norintiems būti „Java“ kūrėjais.

Turite mums klausimą? Prašau paminėti tai šio tinklaraščio „Metodo paslėpimas Java“ komentarų skyriuje ir mes kuo greičiau susisieksime su jumis.