Klausimas: Turint omenyje:
privatus
metodų negalima panaikinti poklasiaisgalutinis
metodų negalima panaikinti poklasiaisgalutinis
metodai leidžia greičiau koduoti, kai yra sudaromi optimizuojant(javac -O)
Mano klausimai yra: A: Kaip pažymite, poklasiai negali būti nepaisomi Na, visų deklaravimo praktika Taigi, norint atsakyti į 1 klausimą, nereikia deklaruoti Kalbant apie 2 klausimą, gali pasinaudoti optimizuojantis kompiliatorius ir JVM Taigi, atsakydami į 2 klausimą, taip, visi kompiliatoriai elgsis Įdomesnis klausimas: ar visi kompiliatoriai optimizuos Pastaba: Mūsų diskusija apie privatų finalą taikoma tik metodams. Privačių galutinių narių kintamieji traktuojami skirtingai privatus
metodai galutinis
taip pat?privatus
metodai kaip galutinis
?privatus
metodai pagal dizainą. Be to, galutinis
Raktažodis nurodo kompiliatoriui, kad poklasiai negali nepaisyti metodo, nepaisant jo prieigos lygio. Nuo privatus
jau reiškia, kad poklasis negali nepaisyti metodo, skelbdamas a privatus
metodas būti galutinis
yra nereikalingas. Deklaracijos pateikimas nesukels problemų, tačiau taip pat nieko nepasieks, nes privatus
s automatiškai laikomi galutinis
. privatus
metodai galutinis
turės vieną šalutinį poveikį. Bet kuris pradedantysis „Java“ programuotojas, susidūręs su jūsų kodu, įsisavins jūsų naudojimą privatus finalas
, galvodamas privatus
s turi būti deklaruojami tokiu būdu. Taigi galėsite nuspręsti, kas turi ir kas nesusisiekė su jūsų kodu. Tai gali pasirodyti įdomus pratimas. privatus
nariai galutinis
. privatus
metodai ir galutinis
metodai. Kadangi poklasiai negali nepaisyti šių tipų, nereikia vykdyti dinaminio susiejimo vykdymo metu. Poklasiai niekada nepaisys metodo, todėl vykdymo laikas visada žinos, kokį metodą iškviesti, neieškodamas paveldėjimo hierarchijos. Kompiliavimo metu optimizuojantis kompiliatorius netgi gali pasirinkti įterpti visus privatus
ir galutinis
efektyvumo gerinimo metodai. privatus
metodai kaip galutinis
. Kompiliatorius neleis jokių privatus
metodas turi būti nepaisomas. Panašiai visi kompiliatoriai neleis poklasiams nepaisyti galutinis
metodai. galutinis
smėlis privatus
s taip, kad jie būtų tiesūs? Trumpas atsakymas - ne. Optimizavimo elgsena priklausys nuo kompiliatoriaus ir jo nustatymų.
Sužinokite daugiau apie šią temą
- Norite daugiau? Žr „Java“ klausimai ir atsakymai Viso klausimų ir atsakymų katalogo rodyklė
//www.javaworld.com/javaworld/javaqa/javaqa-index.html
Ši istorija „Privati ir galutinė?“ iš pradžių buvo išleista „JavaWorld“.