Não entendi muito bem a finalidade de usarmos esse modificador, uma vez que no exemplo da atividade, não foi possível acessar o GetBonificacao() do Estagiário na Main(). Poderia me ajudar?
Não entendi muito bem a finalidade de usarmos esse modificador, uma vez que no exemplo da atividade, não foi possível acessar o GetBonificacao() do Estagiário na Main(). Poderia me ajudar?
Oi, Roberta. Tudo bom?
public
. A diferença é que funciona como public
apenas dentro do próprio projeto. Projetos com referência a DLL desta biblioteca não possuem acesso a membros com internal
.internal
no projeto que possui um membro com este modificador, mas, em projetos externos, as classes que derivam do tipo com estes membros poderá acessar, assim como o protected
.Então, o Main
não tem acesso ao GetBonificacao
, mas, derivando de Funcionario
em qualquer projeto você poderá acessar.
Isto é útil quando você quer criar uma classe com um comportamento que pode ser alterado/acessado por classes derivadas, em outros projetos (protected) e, ao mesmo tempo, precisa acessar os membros diretamente (como os public) somente a partir da sua biblioteca (como o internal) - porque você não quer expor isso diretamente para as pessoas que utilizam sua biblioteca.
O que você acha? Abs.
Muito legal a explicação, mas ainda restou uma dúvida, pois a chamada da GetBonificacao de Estagiario não pode ser chamada na Main né?