Modifikatori pristupa (koji se nazivaju i pravila za određivanje okvira) određuju koji kôd može pristupiti elementu - to jest, koji kôd ima dozvolu da ga čita ili piše. U prethodnim verzijama Visual Basic postojale su tri vrste klasa. Prenesene su u .NET. U svakom od njih .NET omogućuje pristup samo kodu:
- Privatno - unutar istog modula, klase ili strukture.
- Prijatelj - u istoj skupštini.
- Javno - bilo gdje u istom projektu, iz drugih projekata koji navode projekt i iz bilo kojeg sklopa izgrađenog na projektu. Drugim riječima, bilo koji kod koji ga može pronaći.
VB.NET dodao je i po i pol novih.
- zaštićen
- Zaštićeni prijatelj
"Pola" je zato što je Protected Friend kombinacija nove zaštićene klase i stare klase Friend.
Modifikatori zaštićenog i zaštićenog prijatelja potrebni su jer VB.NET implementira posljednji OOP zahtjev da VB nedostaje: baština.
Prije VB.NET-a, vrhunski i prezirni C ++ i Java programeri omalovažili bi VB jer, prema njima, "nije potpuno objektno orijentiran". Zašto? Prethodnim verzijama nedostajalo je nasljedstva. Nasljeđivanje omogućuje objektima da dijele svoja sučelja i / ili implementaciju u hijerarhiji. Drugim riječima, nasljeđivanje omogućuje jedan softverski objekt koji preuzima sve metode i svojstva drugog.
To se često naziva odnosom "jeste-a".
- Vozilo "je-a" kamiona.
- Kvadratnog oblika "je-a".
- Pas "je-a" sisavac.
Ideja je da su općenitije i široko korištene metode i svojstva definirana „roditeljskim“ klasama, a ta su posebnija u „podređenim“ klasama (često ih nazivamo i podklasama). "Sisavac" je općenitiji opis od "psa". Kitovi su sisari.
Velika je korist što možete organizirati svoj kôd tako da morate napisati samo kod koji čini nešto što mnogo objekata mora učiniti jednom u roditelju. Svi "zaposlenici" moraju im biti dodijeljen "broj zaposlenika". Konkretniji kôd može biti dio nastave za djecu. Samo zaposlenici koji rade u općem uredu trebaju im dodijeliti ključ vrata zaposlenika.
Međutim, ova nova nasljedna sposobnost zahtijeva nova pravila. Ako se nova klasa temelji na staroj, Protected je modifikator pristupa koji odražava taj odnos. Zaštićenom kodu može se pristupiti samo iz iste klase ili iz klase izvedene iz te klase. Ne želite da ključeve vrata zaposlenika dodijelite nikome osim zaposlenicima.
Kao što je napomenuto, Zaštićeni prijatelj kombinacija je pristupa i prijatelja i zaštićenog. Elementima koda može se pristupiti ili iz izvedenih klasa ili iz iste skupine ili u oba. Zaštićeni prijatelj može se koristiti za stvaranje biblioteka klasa jer kod koji pristupa vašem kôdu mora biti samo u istoj skupštini.
Ali Friend također ima taj pristup, pa zašto biste koristili zaštićenog prijatelja? Razlog je taj što Friend može biti korišten u izvornoj datoteci, Prostor, Sučelje, Modul, klasa ili struktura. Ali zaštićeni prijatelj može se koristiti samo u razredu. Zaštićeni prijatelj ono je što vam treba za izgradnju vlastitih biblioteka objekata. Friend je samo za teške kodne situacije u kojima je stvarno potreban široki pristup montaži.