Sobes.tech
Junior — Middle

Pode explicar o conceito de duração de existência de um objeto ou variável num programa?

sobes.tech IA

Resposta da IA

A duração de existência de um objeto ou variável é o período de tempo durante o qual o objeto ou variável ocupa memória e está acessível para uso no programa.

Em C#, a duração de existência depende do âmbito e do tipo de variável:

  • Variáveis locais existem apenas durante a execução do bloco de código (por exemplo, um método). Após sair do bloco, a memória para elas é libertada.
  • Campos de objetos existem enquanto o próprio objeto existir. O objeto no heap vive até que não haja referências a ele, após o que o coletor de lixo liberta a memória.
  • Variáveis estáticas existem durante toda a execução da aplicação.

Exemplo:

class Program
{
    static int staticCounter = 0; // vive durante toda a execução do programa

    void Method()
    {
        int localVar = 5; // existe apenas durante a execução do método
        var obj = new MyClass(); // o objeto vive enquanto houver referências
    }
}