Em Diretor.cs apareceu em GetBonificacao: "Diretor.GetBonificacao" oculta o membro herdado
O que isso significa?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Em Diretor.cs apareceu em GetBonificacao: "Diretor.GetBonificacao" oculta o membro herdado
O que isso significa?
Como você tem o método GetBonificacao() declarado na classe base (Funcionario), provavelmente você se esqueceu de utilizar a diretiva override ao sobreescrever o método na classe filha (Diretor).
Basta mudar a assinatura do método para public override double GetBonificacao() e esse aviso desaparecerá.
A diretiva override serve justamente para indicar que estamos gerando outra implementação a um método que foi previamente declarado (usualmente na classe pai).
Você pode consultar mais detalhes sobre o erro CS0108 em https://docs.microsoft.com/pt-br/dotnet/csharp/language-reference/compiler-messages/cs0108