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

Uso de um método estático

Olá! Nessa aula o professor falou sobre o método estático ehAutenticavel. Pra mim ainda não ficou claro quando e onde usar esse tipo de método e ainda não entendi, o que seria a instância do qual ele fala no vídeo?

2 respostas
solução!

Oi, Pedro! Tudo bem?

Vamos começar por instâncias. Quando estamos criando uma classe, estamos apenas criando uma definição, como uma receita. Quando realmente precisarmos de objetos daquele formato, usamos essa receita para criar uma nova instância, que nada mais é que um objeto que segue o formato da classe.

Assim, podemos facilmente criar dados que possuem o mesmo formato.

Com base em uma classe, podemos criar várias instâncias.

Você percebe que apenas utilizamos a classe para criar a estrutura do objeto, certo? Mas não estamos manipulando a classe, e sim um objeto baseado nesta classe.

Mas e se você tem uma classe que possui comportamentos ou propriedades que são globais/independentes, que não acessam dados e comportamentos das instâncias?

Sabe como eu disse que você não acessa a classe diretamente, e sim uma instância? Bom, com métodos estáticos você pode sim acessar a classe diretamente!

No exemplo da aula, o instrutor criou esse método estático porque não há motivo para criar instâncias da classe SistemaAutenticacao, você não concorda? Não é um comportamento que depende das instâncias, que depende dos valores das propriedades delas. Ele apenas verifica se o que foi enviado pelo parâmetro é autenticável ou não e retorna.

Então, em resumo, quando usar métodos estáticos:

  • Se você possui um método que não usa nenhuma variável de instâncias, nem métodos de instâncias, você pode criá-lo estático.

Espero ter ajudado! E qualquer dúvida, não exite em perguntar!

Muito obrigado pela explicação, agora entendi.