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

Herança entre classes

    class Funcionario
    {
        public string Nome { get; set; }
        public string CPF { get; set; }
        public double Salario { get; set; }
        public virtual double GetBonificacao()
        {
            return Salario * 0.10;
        }
    }

    public class Diretor : Funcionario
    {
        public override double GetBonificacao()
        {
            return Salario;
        }
    }

Eu tenho essas duas classes no meu código de estudo aqui no curso. A classe Diretor está herdando as informações da classe Funcionario.

No visual studio, quando acesso o arquivo de código da classe Diretor, ela fica sublinhado em vermelha, e ao passar o ponteiro do mouse por cima para ver o que é o possível problema, vejo a seguinte mensagem: Acessibilidade inconsistente: Classe base "Funcionario" é menos acessível do que a classe "Diretor".

O código está correto de acordo com o que estou fazendo, então por qual motivo isso é dado como um erro no visual studio?

2 respostas
solução!

Oi Marcelo, tudo bem ?

Este aviso geralmente acontece quando não declaramos explicitamente que nossa classe é pública, sendo assim, o código a considera a mesma como internal(que não te permite acessar membros internos da classe, apenas instanciá-las). Para resolver isto, coloque o modificador de acesso publicna classe funcionário, da seguinte forma:

public class Funcionario

Creio que isto sanará o problema.

Qualquer dúvida estou a disposição. Espero ter ajudado. Bons estudos!!!

Completamente falta de atenção minha na hora de escrever o código e criar a classe.

Muito obrigado Nádia!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software