Prijatelj in zaščiten prijatelj v VB.NET

Modifikatorji dostopa (imenovani tudi pravila za določanje obsega) določajo, katera koda lahko dostopa do elementa - torej katera koda ima dovoljenje za branje ali pisanje vanj. V prejšnjih različicah Visual Basic so bile tri vrste razredov. Te so bile prenesene v .NET. V vsaki od teh. .NET omogoča dostop samo do kode:

  • Zasebno - znotraj istega modula, razreda ali strukture.
  • Prijatelj - znotraj iste skupščine.
  • Javno - kjer koli v istem projektu, od drugih projektov, ki se nanašajo na projekt, in iz katerega koli sklopa, zgrajenega iz projekta. Z drugimi besedami, vsaka koda, ki jo lahko najde.

VB.NET je dodala še eno in pol novih.

  • Zaščiteno
  • Zaščiten prijatelj

"Polovica" je zato, ker je Protected Friend kombinacija novega razreda zaščitenih in starega prijatelja.

Modifikatorji zaščitenega in zaščitenega prijatelja so potrebni, ker VB.NET izvaja zadnjo zahtevo OOP, da VB manjka: Dedovanje.

Pred VB.NET-om bi lahko vrhunski in omalovažujoči programerji C ++ in Java omalovažili VB, saj po njihovih navedbah ni bil povsem objektno usmerjen. Zakaj? Prejšnje različice niso imele dediščine. Dedovanje predmetom omogoča, da delijo svoje vmesnike in / ali izvajanje v hierarhiji. Z drugimi besedami, dedovanje omogoča en programski objekt, ki prevzame vse metode in lastnosti drugega.

instagram viewer

Temu se pogosto reče odnos "je-a".

  • Vozilo "je-a" tovornjak.
  • Kvadratna oblika "je-a"
  • Pes "je-a" sesalec.

Ideja je, da so bolj splošne in široko uporabljene metode in lastnosti opredeljene kot "matični" razredi, ki pa so bolj natančne v "otroških" razredih (ki jih pogosto imenujemo podrazredi). "Sesalnik" je splošnejši opis kot "pes." Kiti so sesalci.

Velika prednost je, da lahko kodo organizirate, tako da morate napisati samo kodo, ki počne nekaj, kar mora veliko predmetov storiti enkrat v nadrejenem. Vsi "zaposleni" jim morajo dodeliti "število zaposlenih". Natančnejša koda je lahko del otroških razredov. Samo zaposleni, ki delajo v splošni pisarni, jim morajo dodeliti ključ z vrati za zaposlene.

Ta nova sposobnost dedovanja pa zahteva nova pravila. Če novi razred temelji na starem, je Protected spreminjalec dostopa, ki odraža to razmerje. Do zaščitene kode lahko dostopate samo iz istega razreda ali iz razreda, ki izhaja iz tega razreda. Ne želite, da se ključi vrat za zaposlene dodelijo nikomur, razen zaposlenim.

Kot je navedeno, je zaščiteni prijatelj kombinacija dostopa tako prijatelja kot zaščitenega. Do elementov kode je mogoče dostopati bodisi iz izvedenih razredov bodisi znotraj istega sklopa ali pa iz obeh. Protected Friend se lahko uporablja za ustvarjanje knjižnic razredov, saj mora biti koda, ki dostopa do vaše kode, le v isti sestavi.

Toda Friend ima tudi ta dostop, zakaj bi potem uporabljali zaščitenega prijatelja? Razlog je ta, da lahko Friend uporabite v izvorni datoteki, Imenski prostor, Vmesnik, Modul, razred ali struktura. Toda Protected Friend se lahko uporablja samo v razredu. Zaščiten prijatelj je tisto, kar potrebujete za gradnjo lastnih knjižnic predmetov. Friend je namenjen le težkim kodnim situacijam, kjer je res potreben dostop do širokega sestavljanja.