In , jums jābūt uzmanīgam attiecībā uz iespēju slēpt metodi. Metode, kas izveidota ar tādu pašu tipu un parakstu apakšklasē, var paslēpt mainīgos lielākos klasēs. Šajā rakstā mēs sapratīsim Java slēpšanas metodi šādā veidā:
java komandrindas argumentu piemērs
Kas ir metodes slēpšana?
Metodes slēpšana funkcionāli ir ļoti līdzīga ignorēšanas metodēm. Pārsvarā, ja jūs izveidojat metodi apakšklasē ar tādu pašu veidu un parakstu apakšklasē, tas ļauj izsaukt metodes, pamatojoties uz gadījuma tipu.
Statisku metožu gadījumā ar tādu pašu tipu unparaksts superklasē un apakšklasē, tad apakšklasē esošā metode slēpj metodi virsklasē.
Metode Java koda paslēpšana
pakete com.test klase Parent {public static void foo () {System.out.println ('Inside foo metode vecāku klasē')} public void bar () {System.out.println ('Iekšējās joslas metode vecāku klasē') )}} klase Bērns paplašina vecāku {// Publiskā statiskā tukšuma foo () slēpšana {System.out.println ('Inside foo metode bērnu klasē')} // Publiskās tukšuma joslas ignorēšana () {System.out.println (' Iekšējā joslas metode bērnu klasē ')}} public class Code {public static void main (String [] args) {Parent p = new Parent () Parent c = new Child () System.out.println (' **** ************ Metode slēpjas ******************* ') p.foo () // Šī izsauks metodi vecāku c klasē .foo () // Tas izsauks metodi vecāku klasē System.out.println ('***************** Metode ignorē ************ ******* ') p.bar () // Šī izsaukšanas metode vecāku klasē c.bar () // Šī izsaukšanas metode bērnu klasē}}
Izeja:
IepriekšPiemēram, apakšklasei Bērnam ir statiska metode foo (), kurai ir tāds pats nosaukums un paraksts kā statiskai metodei superklases Vecākos. Kad mēs saucam p.foo () un c.foo (), tā vecāku klasē izsauc foo () metodi
atšķirībā no metodes ignorēšanas, kur p.bar () izsauc metodi vecāku klasē un c.bar () izsauc metodi bērnu klasē.
tipa pārveidošana c ++
Tā kā statiskās metodes tiek atrisinātas kompilēšanas laikā, kamēr tiek apkopota pirmā vecāku klase un pēc tam bērnu klase, un mēs to nevaramir divas statiskas metodes ar tādu pašu nosaukumu, abas foo metodes tiek atrisinātas kā vecāku klases foo () metode.
Kopsavilkums
Ja apakšklasē ir statiska metode ar tādu pašu nosaukumu un parakstu kā statiskā metode superklasē, tad metode superklasē būs zvana neatkarīgi no tā, vai tā tiek izsaukta no bērnu klases vai vecāku klases.
Metodes ignorēšanas gadījumā mēs ignorējam metodi no vecāku klases, ti, ja apakšklasē ir nemestiska metode ar tādu pašu nosaukumu un parakstu kā virsstatiskajā klasē esošā metode, kas nav statiska, tad attiecīgās metodes tiek izsauktas atkarībā no izmantotās atsauces, ti, ja objekts no vecāku klases tiek izmantota, lai izsauktu nestatisku metodi vecāku klasē, tad tiek izmantota metode no vecāku klases, un, ja bērnu klases objekts tiek izmantots, lai izsauktu bērnu statusa metodi bērnu klasē, tiek izmantota metode no bērnu klases.
Ar to mēs esam nonākuši līdz šīs raksta Slēpšanās Java beigās. Pārbaudiet Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Edureka Java J2EE un SOA apmācības un sertifikācijas kurss ir paredzēts studentiem un profesionāļiem, kuri vēlas būt Java izstrādātāji.
typecast double līdz int java
Vai mums ir jautājums? Lūdzu, pieminējiet to šī emuāra “Method Hiding in Java” komentāru sadaļā, un mēs pēc iespējas ātrāk sazināsimies ar jums.