J: Atsaucoties uz:
Privāts
metodes nevar aizstāt ar apakšklasēmgalīgais
metodes nevar ignorēt apakšklasesgalīgais
metodes ļauj ātrāku kodu, kad tos apkopo ar ieslēgtu optimizāciju(javac -O)
Mani jautājumi ir: A: Kā jūs norādāt, apakšklases var nebūt ignorētas Nu, prakse deklarēt visus Tātad, lai atbildētu uz 1. jautājumu, nav jādeklarē Attiecībā uz 2. jautājumu optimizējošais kompilators un JVM var izmantot Tātad, lai atbildētu uz otro jautājumu, jā, visi sastādītāji izturēsies Interesantāks jautājums: vai visi kompilatori optimizēsies Piezīme: Mūsu diskusija par privāto finālu attiecas tikai uz metodēm. Privātie galīgo dalībnieku mainīgie tiek apstrādāti atšķirīgi Privāts
metodes galīgais
arī?Privāts
metodes kā galīgais
?Privāts
metodes pēc konstrukcijas. Turklāt galīgais
atslēgvārds kompilatoram saka, ka apakšklases nedrīkst ignorēt metodi neatkarīgi no tās piekļuves līmeņa. Kopš Privāts
jau nozīmē, ka apakšklase nedrīkst ignorēt metodi, deklarējot a Privāts
metode būt galīgais
ir lieks. Deklarācijas sagatavošana neradīs problēmas, taču arī tā neko nedos, jo Privāts
s tiek automātiski izskatīti galīgais
. Privāts
metodes galīgais
būs viena blakusparādība. Jebkurš iesācējs Java programmētājs, kurš sastopas ar jūsu kodu, pielīdzinās jūsu lietojumu privātais fināls
, domājot par to Privāts
s jādeklarē tādā veidā. Tātad jūs varēsiet spriest, kam ir un kas nav sazinājies ar jūsu kodu. Tas varētu izrādīties interesants vingrinājums. Privāts
biedri galīgais
. Privāts
metodes un galīgais
metodes. Tā kā apakšklases nedrīkst ignorēt šos tipus, nav nepieciešams veikt dinamisko saistīšanu izpildlaikā. Apakšklases nekad neatcels metodi, tāpēc izpildlaiks vienmēr zinās, kuru metodi izsaukt, nemeklējot mantojuma hierarhiju. Kompilēšanas laikā optimizējošais kompilators var pat izvēlēties iekļaut visus Privāts
un galīgais
metodes veiktspējas uzlabošanai. Privāts
metodes kā galīgais
. Sastādītājs neļaus nevienu Privāts
metode tiek ignorēta. Tāpat visi kompilatori novērsīs apakšklases ignorēšanu galīgais
metodes. galīgais
smiltis Privāts
s tā, lai tie būtu vienā līnijā? Īsā atbilde ir nē. Optimizācijas darbība būs atkarīga no kompilatora un tā iestatījumiem.
Uzziniet vairāk par šo tēmu
- Vēlas vairāk? Skatīt Java jautājumi un atbildes Pilna jautājumu un atbilžu kataloga indekss
//www.javaworld.com/javaworld/javaqa/javaqa-index.html
Šis stāsts "Privāts un galīgs?" sākotnēji to publicēja JavaWorld.