Modifikátory prístupu (nazývané aj pravidlá určovania rozsahu) určujú, ktorý kód môže získať prístup k prvku - to znamená, ktorý kód má povolenie na jeho čítanie alebo zápis. V predchádzajúcich verziách jazyka Visual Basic existovali tri typy tried. Tieto boli prenesené do .NET. Vo všetkých týchto sieťach .NET umožňuje prístup iba ku kódu:
- Súkromné - v rámci toho istého modulu, triedy alebo štruktúry.
- Priateľ - v rovnakom zhromaždení.
- Verejné - kdekoľvek v tom istom projekte, od iných projektov, ktoré odkazujú na projekt, a zo všetkých zostáv vytvorených z projektu. Inými slovami, akýkoľvek kód, ktorý ho môže nájsť.
VB.NET pridal tiež jednu a pol nových.
- chránený
- Chránený priateľ
„Polovica“ spočíva v tom, že chránený priateľ je kombináciou novej triedy chráneného a starého triedy chráneného.
Modifikátory chráneného a chráneného priateľa sú potrebné, pretože VB.NET implementuje poslednú požiadavku OOP, ktorá chýbala VB: dedičstvo.
Pred VB.NET by nadšenci a pohrdaví programátori C ++ a Java obmedzovali VB, pretože podľa nich „nie je úplne objektovo orientovaný“. Prečo? Predchádzajúcim verziám chýbalo dedičstvo. Dedičnosť umožňuje objektom zdieľať svoje rozhrania a / alebo implementáciu v hierarchii. Inými slovami, dedenie umožňuje jeden softvérový objekt, ktorý preberá všetky metódy a vlastnosti iného.
Toto sa často nazýva vzťah „je-a“.
- Nákladné vozidlo „je“.
- Štvorcový tvar „je“.
- Pes je „cicavec“.
Ide o to, že všeobecnejšie a široko používané metódy a vlastnosti sa definujú ako „rodičovské“ triedy a tieto sa konkretizujú v „podradených“ triedach (často nazývaných podtriedy). „Cicavec“ je všeobecnejší opis ako „pes“. Veľryby sú cicavce.
Veľkou výhodou je, že si môžete usporiadať svoj kód, takže stačí napísať kód, ktorý robí niečo, čo veľa objektov musí urobiť raz v rodičovi. Všetkým „zamestnancom“ musí byť pridelené „číslo zamestnanca“. Špecifickejší kód môže byť súčasťou podradených tried. Kľúč zamestnaneckej karty musí mať priradený iba zamestnanec, ktorý pracuje v kancelárii.
Táto nová schopnosť dedičstva si však vyžaduje nové pravidlá. Ak je nová trieda založená na starej, chránená je modifikátor prístupu, ktorý odráža tento vzťah. Prístup k chránenému kódu je možný iba z tej istej triedy alebo z triedy odvodenej od tejto triedy. Nechcete, aby boli kľúče od karty zamestnanca priradené nikomu okrem zamestnancov.
Ako už bolo uvedené, chránený priateľ je kombináciou prístupu priateľa aj chráneného. K prvkom kódu sa dá pristupovať buď z odvodených tried alebo z tej istej zostavy alebo z oboch. Chráneného priateľa môžete použiť na vytváranie knižníc tried, pretože kód, ktorý pristupuje k vášmu kódu, musí byť v rovnakom zhromaždení.
Ale priateľ má aj tento prístup, tak prečo by ste používali chráneného priateľa? Dôvod je ten, že priateľa je možné použiť v zdrojovom súbore, namespace, Rozhranie, Modul, trieda alebo štruktúra. Chráneného priateľa však možno použiť iba v triede. Chránený priateľ je to, čo potrebujete na vytvorenie vlastných knižníc objektov. Priateľ je určený iba pre náročné kódové situácie, keď je skutočne potrebný široký prístup do zostavy.