Satura rādītājs
Kad mēs strādājam, veidojot lietotāja saskarnes Java, mums jāpievērš īpaša uzmanība un pūles, lai izveidotu dažādas metodes Klausītājs vai klausītājiem, kas fiksē visus notikumus, ko var ģenerēt no lietotāju darbībām.Cik reizes katra no šīm klasēm Klausītājs tie būs paredzēti tikai mūsu izveidotās sistēmas vai lietojumprogrammas konkrētas sastāvdaļas lietošanai un patēriņam, nav lielas jēgas veidot pilnīgas un atsevišķas klases.
Tāpēc mums ir anonīmas nodarbības, ar kuru mēs varam saīsināt definīciju Klausītājs un tādējādi vienkāršot tā ieviešanu mūsu programmās.
Kā jau minējām sākumā, veidojot šāda veida komponentus Klausītājs Lai apstrādātu mūsu lietotāja saskarnes elementu notikumus, tiem parasti ir ļoti īpašs mērķis, ko nevar izmantot atkārtoti, tāpēc mēs varam izvēlēties ģenerēt tos kā ligzdotas klases un tādējādi mazliet vienkāršot ģenerējamo kodu.
Anonīmas nodarbībasTomēr mums kā labiem programmētājiem noteikti vajadzēs uzlabot lietas un padarīt tās vēl vienkāršākas. anonīmas nodarbības, tie ļauj mums izveidot a ligzdotā klase un tās piemērs vienā solī, tādējādi mēs nodrošinām dažādu lietotāja saskarņu izstrādi.
Tālāk apskatīsim pāris piemērus, kā mēs varam ieviest anonīmu klasi, sākot no ligzdotas klases:
Mēs redzam, ka pirmajā daļā mēs definējam a publiskā metode un tad šajā iekšpusē mēs izveidojam ligzdotu klasi, šī klase ir atbildīga par a ieviešanu Saskarne lai īstenotu a Klausītājs notikumiem, kurus var ģenerēt programmā.
Apakšā mēs esam darījuši to pašu, ko sākumā, tikai to, ka ligzdotās klases definēšanas vietā mēs definējam anonīma klase, ar kuru mēs varam ieviest saskarni un izveidot instanci vienā solī, tādējādi efektīvi samazinot izpildāmās koda rindas.
- A anonīma klase tas faktiski ir īpašs ligzdotu klašu veids, un tas tiks uzskatīts par tādu, tomēr to nevar izdarīt pagarina vai darbarīki nepārprotami.
- A anonīma klase vienmēr jāievieš superklases abstraktās metodes vai Saskarne.
- anonīmas nodarbības viņi vienmēr izmantos augstākās klases konstruktoru bez argumentu formu. Gadījumā, ja tiek ieviesta saskarne, tas būs konstruktors Objekts.
- Par katru apkopoto anonīmo klasi, Java ģenerēs .class failu, kur katrs tiks identificēts, piemēram, pēc to uzņemšanas secības ClassExternal $ 1class, ClassExternal $ 2.class un tā tālāk.