Menetelmän piilottamisen toteuttaminen Java-sovelluksessa



Tämä artikkeli antaa sinulle yksityiskohtaisen ja kattavan tietämyksen siitä, miten Java-tekniikan piilotus voidaan toteuttaa esimerkkien avulla.

Sisään , sinun on oltava varovainen menetelmän piilottamisen suhteen. Alaluokassa samalla tyypillä ja allekirjoituksella luotu menetelmä voi piilottaa muuttujat yliluokassa. Tässä artikkelissa ymmärrämme Methodin piilottamisen Java-muodossa seuraavasti:

Mikä on menetelmän piilottaminen?

Menetelmän piilottaminen on toiminnallisesti hyvin samanlainen kuin ohittaminen. Korvauksena, jos luot menetelmän alaluokassa, jolla on sama tyyppi ja allekirjoitus alaluokassa, se sallii menetelmien kutsumisen ilmentymän tyypin perusteella.





Java-logo

Staattisten menetelmien tapauksessa, joilla on sama tyyppi jaallekirjoitus sitten superluokassa ja alaluokassa, sitten menetelmä aliluokassa piilottaa menetelmän yliluokassa.



Menetelmä Java-koodin piilottaminen

package com.test class Parent {public static void foo () {System.out.println ('Inside foo method in parent class')} public void bar () {System.out.println ('Sisäisen palkin menetelmä vanhempien luokassa') )}} luokka Lapsi laajentaa vanhempaa {// julkisen staattisen tyhjän foo () -järjestelmän piilottaminen {System.out.println ('Inside foo -menetelmä lapsiluokassa')} // Julkisen tyhjiöpalkin korvaaminen () {System.out.println (' Inside bar -menetelmä lapsiluokassa ')}} public class Code {public static void main (String [] args) {Parent p = new Parent () Parent c = new Child () System.out.println (' **** ************ Menetelmän piilotus ******************* ') p.foo () // Tämä kutsuu menetelmää vanhempaluokassa c .foo () // Tämä kutsuu menetelmää vanhemmalle luokalle System.out.println ('***************** Menetelmä ohittaa ************ ******* ') p.bar () // Tämä kutsuu menetelmää vanhempien luokassa c.bar () // Tämä kutsuu menetelmää alaluokassa}}

Tuotos:

dataohjattu kehys seleenissä

EdelläEsimerkiksi alaluokassa Child on staattinen menetelmä foo (), jolla on sama nimi ja allekirjoitus kuin staattisella menetelmällä superluokan vanhemmassa. Kun kutsumme p.foo () ja c.foo (), se kutsuu foo () -menetelmää vanhempien luokassa



toisin kuin menetelmän ohittamisessa, jossa p.bar () kutsuu menetelmää vanhempaluokassa ja c.bar () kutsuu menetelmää lapsiluokassa.

Koska staattiset menetelmät ratkaistaan ​​kääntämisajankohtana, kun ensimmäinen vanhempaluokka noudatetaan ja sitten lapsiluokka, emme voisinulla on kaksi staattista menetelmää samalla nimellä, molemmat foo-menetelmät ratkaistaan ​​vanhemman luokan foo () -menetelmänä.

Yhteenveto

Jos alaluokassa on staattinen menetelmä, jolla on sama nimi ja allekirjoitus kuin staattisella menetelmällä superluokassa, menetelmä yläluokassa on kutsu riippumatta siitä, kutsutaanko sitä alaluokasta vai vanhempaluokasta.

on suhde java

Jos menetelmä on ohitettu, ohitetaan menetelmä vanhemmalta luokalta, ts. Jos alaluokassa on ei-staattinen menetelmä, jolla on sama nimi ja allekirjoitus kuin ei-staattisella menetelmällä superluokassa, vastaavat menetelmät kutsutaan käytetyn viitteen mukaan, eli jos objekti vanhemmuusluokasta käytetään kutsumaan ei-staattista menetelmää vanhempien luokassa, sitten käytetään vanhempien luokan menetelmää ja jos lapsiluokan objektia käytetään kutsumaan ei-staattinen menetelmä lapsiluokassa, käytetään alaluokan menetelmää.

Tämän avulla olemme päässeet tämän Java-artikkeliin piilottavan menetelmän loppuun. Katso Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Edurekan Java J2EE- ja SOA-koulutus- ja sertifiointikurssit on suunniteltu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä.

Onko sinulla kysymys meille? Mainitse se tämän 'Method Hiding in Java' -blogin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.