

Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
Em um jogo de estratégia online, você tem diferentes classes de personagens, como "Guerreiro" e "Mago", que herdam de uma classe base chamada "Personagem". A classe base possui um método chamado "ExecutarHabilidade", que funciona de maneira diferente quando chamado por um personagem guerreiro em comparação com um personagem mago.
Considerando princípios de programação orientada a objetos, assinale a abordagem mais adequada para implementar essa diferenciação.
Utilizar variáveis de controle condicional dentro do método "ExecutarHabilidade" para verificar explicitamente o tipo da instância e ajustar o comportamento.
Cria versões específicas do método "ExecutarHabilidade" para "Guerreiro" e "Mago" com implementações distintas.
Marcar o método "ExecutarHabilidade" como virtual na classe base "Personagem" e fornecendo implementações específicas nas classes derivadas.
Permitir que "Guerreiro" e "Mago" herdem métodos específicos de diferentes classes e personalizem o comportamento de "ExecutarHabilidade".
Ocultar a implementação do método "ExecutarHabilidade" na classe base "Personagem” e redefinindo-o nas classes derivadas para comportamentos específicos.