export class SistemaAutenticacao{
static login(funcionario,senha){
return funcionario.senha == senha;
}
}Como ele consegue fazer a verificação sem acesso às classes Diretor e Gerente?
export class SistemaAutenticacao{
static login(funcionario,senha){
return funcionario.senha == senha;
}
}Como ele consegue fazer a verificação sem acesso às classes Diretor e Gerente?
Olá, Dante, tudo bem?
Vamos lá, o método login recebe dois parâmetros: funcionario e senha. Por mais que a classe SistemaAutenticacao não tenha acesso diretamente às classes Diretor e Gerente, o método login pode receber uma instância de uma dessas classes, sem precisar exportar as classes, e a instância será utilizada como a variável funcionario.
Uma instância de Diretor ou de Gerente, por sua vez, possui uma propriedade senha própria. O que faremos é simplesmente comparar essa senha da instância com a senha que foi passada como parâmetro no método.
Além disso, nas próximas aulas o instrutor fará verificações para ter certeza de que o parâmetro funcionario realmente é uma instância de uma dessas classes!
Espero ter esclarecido! Se tiver mais dúvidas, estaremos aqui para te ajudar. Bons estudos! :)