Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Classes estáticas

Olá, poderiam me explicar melhor sobre classes estáticas? Pelo que eu entendi, classes estáticas não podem ter instâncias mas até ai classes abstratas também não podem ser instanciadas.. E também classes estáticas não podem ter estados. O que exatamente significa uma classe não ter estados? E no geral, só iremos criar classes estáticas quando quisermos criar extensões do List?

2 respostas
solução!

Olá Icaro, tudo certo?

Gostaria muito de te responder de cabeça, mas posso não ficar muito claro. então vamos recorrer à documentação.

Assim como a classe abstrata, a classe estática não pode ser instanciada. Mas ao contrário da classe abstrata, você consegue acessar os métodos estáticos dessa classe. Assim como funciona o Console.WriteLine();. Seria como o uso da classe Math.Round(), você usa o método e não mantém valores (estado) para esses métodos.

Os membros estáticos da classe mantém seu valor em memória, por isso foi possível contar a quantidade de contas que foram instanciadas nos cursos anteriores (acho que no terceiro curso), mas a partir do momento que a instância é destruída, esse valor é perdido.

Quanto a sua última pergunta, essa na verdade é uma utilização para classes estáticas. Mas não é a única maneira de usar. As vezes você pode precisar de um método, mas este método não faz sentido fazer parte de uma classe de modelo.

Bom, mas como disse acima, segue a documentação para mais informações, vai que me enrolei na explicação.

Espero ter ajudado!

Obrigado Fabiano!