User Tools

Site Tools


Problem constructing authldap
laboratoare:organizare-acces
Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
laboratoare:organizare-acces [2013/09/24 18:55]
daniel.ciocirlan Jumatate
laboratoare:organizare-acces [2013/09/24 19:33]
daniel.ciocirlan
Line 37: Line 37:
 Clasele şi funcţiile menţionate până acum au fost declarate utilizând un specificator special: ''​public''​. În limbajul Java (şi în majoritatea limbajelor de programare de tipul OOP), orice clasă, atribut sau metodă posedă un **specificator de acces**, al cărui rol este de a restricţiona accesul la entitatea respectivă,​ din perspectiva altor clase. Există specificatorii:​ Clasele şi funcţiile menţionate până acum au fost declarate utilizând un specificator special: ''​public''​. În limbajul Java (şi în majoritatea limbajelor de programare de tipul OOP), orice clasă, atribut sau metodă posedă un **specificator de acces**, al cărui rol este de a restricţiona accesul la entitatea respectivă,​ din perspectiva altor clase. Există specificatorii:​
  
 +* **''​public''​** - permite acces complet din exteriorul clasei curente
 +* **''​private''​** - limitează accesul doar în cadrul clasei curente
 +* **''​protected''​** - limitează accesul doar în cadrul clasei curente şi al tuturor descendenţilor ei (conceptul de //​descendenţă//​ sau de //​moştenire//​ va fi explicat mai târziu)
 +* **(default)** - în cazul în care nu este utilizat explicit nici unul din specificatorii de acces de mai sus, accesul este permis doar în cadrul //​pachetului//​ (package private). Atenţie, nu confundaţi specificatorul default (= lipsa unui specificator explicit) cu ''​protected''​!
 +
 +Utilizarea specificatorilor contribuie la realizarea //​**încapsulării**//​. Amintim, din primul laborator, că încapsularea se referă la acumularea atributelor şi metodelor caracteristice unei anumite categorii de obiecte într-o clasă. //Pe de altă parte, acest concept denotă şi ascunderea informaţiei de stare internă a unui obiect, reprezentată de atributele acestuia, alături de valorile aferente, şi asigurarea comunicării strict prin intermediul metodelor// (= //​interfata//​ clasei). Acest lucru conduce la izolarea modului de implementare a unei clase (= atributele acesteia şi cum sunt manipulate) de utilizarea acesteia. Utilizatorii unei clase pot conta pe functionalitatea expusa de aceasta, indiferent de modalitatea in care ea este implementata,​ aceasta putandu-se chiar modifica in timp. Accesul utilizatorilor la implementarea unei clase ar conduce la imposibilitatea modificarii acesteia din urma, fara a declansa actualizari ale portiunilor ce utilizeaza clasa respectiva.
laboratoare/organizare-acces.txt · Last modified: 2019/09/04 18:41 by Adriana Draghici