Junior
Wat is de scope (scoped) in C#?
sobes.tech AI
Antwoord van AI
De scope in C# bepaalt de beschikbaarheid van variabelen, methoden en typen in een bepaald deel van het programma. Het is een beperking op waar in de code een bepaalde identifier gebruikt kan worden.
Belangrijkste scope-gebieden:
- Codeblok: Variabelen gedeclareerd binnen accolades
{ }zijn alleen beschikbaar binnen dat blok. - Methodescope: Variabelen en parameters gedeclareerd binnen een methode zijn alleen beschikbaar binnen die methode.
- Klasse/Structuur scope: Leden van een klasse of structuur (velden, eigenschappen, methoden) zijn toegankelijk afhankelijk van de toegangsmodificatoren (public, private, protected, internal).
- Namespace scope: Types gedeclareerd in een namespace zijn beschikbaar binnen dat namespace en in andere namespaces waar
usingwordt gebruikt. - Assembly scope: Types met de modifier
internalzijn alleen beschikbaar binnen de huidige assembly.
Voorbeeld van codeblok scope:
public void ExampleMethod()
{
int x = 10; // x is alleen beschikbaar binnen ExampleMethod
if (x > 5)
{
int y = 20; // y is alleen beschikbaar binnen het if-blok
Console.WriteLine(y);
}
// Console.WriteLine(y); // compileerfout: y is hier niet beschikbaar
}