Junior — Middle
Kunt u het concept van de levensduur van een object of variabele in een programma uitleggen?
sobes.tech AI
Antwoord van AI
De duur van het bestaan van een object of variabele is de periode waarin het object of de variabele geheugen inneemt en beschikbaar is voor gebruik in het programma.
In C# hangt de duur van het bestaan af van de scope en het type variabele:
- Lokale variabelen bestaan alleen tijdens de uitvoering van het codeblok (bijvoorbeeld, een methode). Na het verlaten van het blok wordt het geheugen vrijgegeven.
- Veldvariabelen van objecten bestaan zolang het object zelf bestaat. Het object in de heap leeft totdat er geen verwijzingen meer naar zijn, waarna de garbage collector het geheugen vrijmaakt.
- Statische variabelen bestaan gedurende de hele runtime van de applicatie.
Voorbeeld:
class Program
{
static int staticCounter = 0; // leeft gedurende de hele runtime van het programma
void Method()
{
int localVar = 5; // bestaat alleen tijdens de uitvoering van de methode
var obj = new MyClass(); // het object leeft zolang er verwijzingen naar zijn
}
}