Video: Tema XII.2 - Modificatorii de acces 2024
Programarea orientată pe obiect, cum ar fi Java, are o mare ascundere a detaliilor. Programatorii care scriu o singură bucată de cod nu ar trebui să treacă cu detaliile din codul unui alt programator. Nu e vorba de securitate și de secret. Este o chestiune de modularitate.
Când ascundeți detaliile, păstrați intricaciile din interiorul unei singure bucăți de cod de la a fi răsucite și rupte de o altă bucată de cod. Codul dvs. vine în bucăți frumoase, discrete, ușor de gestionat. Păstrați complexitatea la minim. Faceți mai puține greșeli. Economisiți bani. Ajutați la promovarea păcii în lume.
Puteți găsi o mulțime de exemple de utilizare a câmpurilor private. Atunci când un câmp este declarat privat, acesta este ascuns de orice amestec în afară. Această ascundere îmbunătățește modularitatea, minimizează complexitatea și așa mai departe.
În altă parte sunt exemple de lucruri care sunt declarate publice. La fel ca o celebritate publică, un câmp declarat public este lăsat larg deschis. O mulțime de oameni știu probabil ce fel de pastă de dinți a folosit Elvis, și orice programator poate face referire la un câmp public, chiar și un câmp care nu este numit Elvis.
În Java, cuvintele public și private sunt numite modificatori de acces. Fără îndoială, ați văzut câmpuri și metode fără modificatori de acces în declarațiile lor. Se spune că o metodă sau câmp de acest tip are acces implicit . Multe exemple folosesc accesul implicit, fără a face mari probleme. În regulă, uneori.
Și puteți afla despre încă un alt modificator de acces. Este modificatorul de acces protejat. În Java, accesul implicit pentru un membru al unei clase este accesul la pachet. Un membru declarat fără cuvântul public, privat, sau protejat în fața acestuia este accesibil în pachetul în care se află clasa sa.
Numele pachetelor, cu toate punctele și subpărțile lor, pot fi ușor înșelătoare. De exemplu, atunci când scrieți un program care răspunde la clicurile pe butoane, în mod normal, importați clase din două pachete separate. Pe o singură linie, este posibil să aveți java de import. AWT. *;. Pe o altă linie, este posibil să aveți java de import. AWT. eveniment. *;. Importarea tuturor claselor din java. pachetul awt nu importa automat clase din java. AWT. pachet de evenimente.