Sådan implementeres metode, der gemmes i Java



Denne artikel giver dig en detaljeret og omfattende viden om, hvordan du implementerer metode, der gemmes i Java med eksempler.

I , skal du være forsigtig med muligheden for at skjule metoden. En metode oprettet med samme type og signatur i underklassen kan skjule variabler i en superklasse. I denne artikel vil vi forstå Method Hiding in Java på følgende måde:

konvertere dobbelt til int java

Hvad skjuler metode?

Metode skjuler er funktionelt meget lig metoder, der tilsidesætter. Hvis du opretter en metode i underklasse med den samme type og underskrift i underklassen, tillader det opkald af metoder baseret på typen af ​​forekomst.





Java-logo

I tilfælde af statiske metoder af samme type ogsignatur i superklasse og underklasse derefter, så metoden i underklassen skjuler metoden i superklassen.



Metode Skjuler Java-kode

pakke com.test klasse Overordnet {public static void foo () {System.out.println ('Inside foo method in parent class')} public void bar () {System.out.println ('Inside bar method in parent class') )}} klasse Child udvider Forælder {// Skjuler offentlig statisk ugyldig foo () {System.out.println ('Inde foo-metode i underordnet klasse')} // Tilsidesættelse af offentlig tomrumsbjælke () {System.out.println (' Inden for bjælkemetode i underordnet klasse ')}} offentlig klasse Kode {offentlig statisk ugyldigt hoved (String [] args) {Forælder p = ny Forælder () Forælder c = nyt underordnet () System.out.println (' **** ************ Metode skjuler ****************** ') p.foo () // Dette kalder metode i overordnet klasse c .foo () // Dette kalder metoden i overordnet klasse System.out.println ('**************** Metode tilsidesat ************ ******* ') p.bar () // Dette kalder metoden i overordnet klasse c.bar () // Dette kalder metoden i underklassen}}

Produktion:

power bi vs tableau 2016

I ovenståendeEksempel: Underklassen Child har en statisk metode foo () med samme navn og signatur som en statisk metode i superklassen Parent. Når vi kalder p.foo () og c.foo (), kalder det foo () -metoden i overordnet klasse



i modsætning til i metodeoverstyring, hvor p.bar () kalder metoden i overordnet klasse og c.bar () kalder metoden i underklasse.

Da statiske metoder løses på kompileringstidspunktet, mens kompilering overholdes første overordnede klasse og derefter underordnet klasse, og det kan vi ikkehar to statiske metoder med samme navn, begge foo-metoderne løses som foo () -metoden for den overordnede klasse.

Resumé

Hvis en underklasse har en statisk metode med samme navn og underskrift som en statisk metode i superklassen, vil metoden i superklassen blive kaldt uanset om den kaldes fra underklasse eller overordnet klasse.

hvordan man sammenligner to streng

I tilfælde af metodeoverstyring tilsidesætter vi metoden fra overordnet klasse, dvs. hvis en underklasse har en ikke-statisk metode med samme navn og signatur som en ikke-statisk metode i superklassen, kaldes de respektive metoder afhængigt af den anvendte reference, dvs. hvis objektet af overordnet klasse bruges til at kalde ikke-statisk metode i overordnet klasse, så anvendes metode fra overordnet klasse, og hvis objekt af underordnet klasse bruges til at kalde ikke-statisk metode i underordnet klasse, anvendes metode fra underordnet klasse.

Med dette kommer vi til slutningen af ​​denne metode, der gemmer sig i Java-artiklen. Tjek den af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Edurekas Java J2EE- og SOA-uddannelses- og certificeringskursus er designet til studerende og fagfolk, der ønsker at være Java-udvikler.

Har du et spørgsmål til os? Nævn det i kommentarfeltet på denne “Metode gemmer sig i Java” -blog, og vi vender tilbage til dig hurtigst muligt.