Gegevens verbergen in VB .NET
Het verbergen van gegevens is het vermogen van een klasse om de toegang van zijn gegevensleden tot bepaalde categorieën methoden of klassen te beperken.
Er zijn twee soorten gegevens verborgen in VB .NET:
1. Inkapseling: Inkapseling, wanneer gebruikt in de context van Visual Basic .NET, is de techniek waarbij variabelen en functies binnen een klasse worden samengevoegd. Alle details zijn zo samengevat dat de gebruikers alleen hoeven te weten hoe de klasse werkt, en niet hoe deze werkt.
2. Toegankelijkheidsmodificator: Deze worden gebruikt om het toegangsniveau van de elementen van de klasse te specificeren. De toegankelijkheid van klasseleden (velden, methoden en eigenschappen) kan worden gewijzigd op basis van het bereik waartoe ze toegankelijk zijn.
De volgende tabel geeft een overzicht van de verschillende toegankelijkheidsmodifiers met een uitleg van hun reikwijdte.
| Modificator | Reikwijdte |
|-------|-------|
| Privé | Alleen beschikbaar binnen de klasse. |
| Beschermd | Beschikbaar binnen de klas, de afgeleide klassen en de vrienden. |
| Intern | Verkrijgbaar binnen de montage. |
| Beschermd intern | Beschikbaar binnen de assemblage en de afgeleide klassen. |
| Openbaar | Beschikbaar voor alle andere klassen van het project, de klassen in de verschillende projecten van dezelfde oplossing en de klassen van andere projecten die naar deze assembly verwijzen. |
| Vriend | Beschikbaar voor alle klassen van hetzelfde samenstel of project. |
| Niet erfelijk | Alleen beschikbaar voor de klasse en kan niet worden overgenomen |
Voorbeeld van gegevens verbergen in VBNET:
```
Klant uit de openbare klasse
Privé_id
Privé _fName
Privé _lNaam
Privé _e-mailadres
Openbare eigendoms-ID
Krijgen
Retour _id
Einde ophalen
Instellen(waarde)
Als waarde <=0 Dan
Throw New System.ArgumentException("ID moet een positief geheel getal zijn.", "ID")
Einde Als
_id =waarde
Einde set
Einde eigendom
Voornaam van openbaar eigendom
Krijgen
Retourneer _fName
Einde ophalen
Instellen(waarde)
_fNaam =waarde
Einde set
Einde eigendom
Achternaam van openbaar eigendom
Krijgen
Retourneer _lNaam
Einde ophalen
Instellen(waarde)
_lNaam =waarde
Einde set
Einde eigendom
E-mail van openbaar eigendom
Krijgen
Retourneer _e-mail
Einde ophalen
Instellen(waarde)
Zo niet, IsValidEmail(waarde) Dan
Nieuwe System.ArgumentException("Ongeldig e-mailadres.", "E-mail") genereren
Einde Als
_e-mail =waarde
Einde set
Einde eigendom
Privé gedeelde functie IsValidEmail(email)
Dim emailRegex As String ="^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$ "
Dim emailMatch As Boolean =Regex.IsMatch(e-mail, emailRegex)
E-mailMatch retourneren
Eindfunctie
Einde klasse
```
In het bovenstaande voorbeeld hebben we een klasse met de naam 'Klant' gedefinieerd, die de gegevens van de klant omvat, zoals ID, voornaam, achternaam en e-mailadres. We hebben ook een privé gedeelde methode gedefinieerd met de naam `IsValidEmail` die wordt gebruikt om het e-mailadres te valideren. De toegankelijkheid van de klasleden wordt gecontroleerd met behulp van de toegankelijkheidsmodifiers 'Privé' en 'Openbaar'. De eigenschap `ID` is gemarkeerd als `Private`, wat betekent dat deze niet toegankelijk is buiten de klasse. De eigenschappen `FirstName`, `LastName` en `Email` zijn gemarkeerd als `Public`, wat betekent dat ze van buiten de klasse toegankelijk zijn. |