Hogyan lehet megvalósítani a módszer rejtését Java-ban

Ez a cikk részletes és átfogó tudnivalókat nyújt Önnek a módszerek rejtésének megvalósításáról a Java példákkal.

Ban ben , ügyelnie kell a módszer elrejtésének lehetőségére. Az alosztályban azonos típussal és aláírással létrehozott módszer elrejtheti a változókat egy szuperosztályban. Ebben a cikkben a következő módon fogjuk megérteni a Java elrejtésének módját:



Mi a módszer elrejtése?

A módszer elrejtése funkcionálisan nagyon hasonlít a felülírásra. Felülírva, ha alkategóriában alkategóriát hoz létre ugyanazzal a típussal és aláírással az alosztályban, akkor lehetővé teszi a metódusok meghívását a példány típusa alapján.



Java logó

Statikus módszerek esetén azonos típusú ésaz aláírás a szuperosztályban és az alosztályban, majd az alosztály metódusa elrejti a módszert a szuperosztályban.



Módszer Java kód elrejtése

csomag com.test osztály Szülő {public static void foo () {System.out.println ('Inside foo módszer a szülő osztályban')} public void bar () {System.out.println ('Belső sáv módszer a szülő osztályban') )}} osztály A gyermek kiterjeszti a szülőt {// nyilvános statikus void foo () elrejtése {System.out.println ('Inside foo módszer a gyermekosztályban')} // A nyilvános érvényességi sáv felülírása () {System.out.println (' Belsősávos módszer a gyermekosztályban ')}} public class Code {public static void main (String [] args) {Szülő p = új Szülő () Szülő c = új Gyerek () System.out.println (' **** ************ Metódus elrejtése ******************* ') p.foo () // Ez a metódust meghívja a c szülő osztályban .foo () // Ez a metódust meghívja a System.out.println szülő osztályban ('***************** A metódus felülírja ************ ******* ') p.bar () // Ez a metódust meghívja a szülő osztályban c.bar () // Ez a metódust hívja a gyermek osztályban}}

Kimenet:

hogyan lehet megakadályozni a holtpontot a java-ban

A fentiekbenPéldául a Child alosztálynak van foo () statikus módszere, amelynek neve és aláírása megegyezik a szuperosztályú szülő statikus módszerével. Amikor meghívjuk a p.foo () és a c.foo () függvényeket, a foo () metódust hívja meg a szülő osztályban



ellentétben a metódus felülbírálásával, ahol a p.bar () meghívja a metódust a szülő osztályban, a c.bar () pedig a metódust a gyermek osztályban.

Mivel a statikus módszerek a fordítás idején megoldódnak, miközben az összeállítás során az első szülő osztály betartja a gyermek osztályt, és mi nem tudjukkét azonos nevű statikus metódussal rendelkezik, mind a foo metódusok a szülő osztály foo () metódusaként vannak feloldva.

mire használják a nagioszt

Összegzés

Ha egy alosztálynak van egy statikus metódusa, amelynek neve és aláírása megegyezik a szuperosztály statikus módszerével, akkor a szuperkategóriában alkalmazott módszer hívás lesz, függetlenül attól, hogy gyermek- vagy szülőosztályból hívják-e meg.

A metódus felülbírálása esetén felülírjuk a metódust a szülő osztálytól, azaz ha egy alosztálynak van egy nem statikus metódusa, ugyanazzal a névvel és aláírással, mint a szuperosztály nem statikus metódusa, akkor a megfelelő metódusokat a használt referenciától függően hívjuk meg, azaz ha objektum A szülő osztály nem sztatikus metódus hívására szolgál a szülő osztályban, majd a szülő osztály metódusát használjuk, és ha a gyermek osztály objektumát használjuk a nem statikus metódus hívására a gyermek osztályban, akkor a gyermek osztály metódusát használjuk.

Ezzel a módszer elrejtésével a Java-ban véget értünk. Nézze meg a az Edureka, egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóval rendelkező hálózata elterjedt az egész világon. Az Edureka Java J2EE és SOA képzési és tanúsítási tanfolyamát olyan hallgatók és szakemberek számára tervezték, akik Java fejlesztők szeretnének lenni.

Van egy kérdésünk? Kérjük, említse meg a „Method Hiding in Java” blog megjegyzés rovatában, és a lehető leghamarabb kapcsolatba lépünk Önnel.