Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Duvida na Aula "Revisão de Modificadores e Protected Internal"

Ao realizar um estudo do que foi abordado durante o envio e vendo o material disponível na plataforma, gostaria que fosse elucidado se no tópico desta aula:

"O MetodoProtegido é visível para ClasseDefine e as derivadas. Acabamos de conhecer outro modificador de acesso: internal, usado apenas nas classes até agora — tanto implícita, como explicitamente."

Gostaria de saber o que seria essa ClasseDefine, seria na realidade a ClasseTeste?

1 resposta
solução!

Olá, Markus!

Acho que houve um erro na transcrição. De fato, a classe ClasseDefine não existe. Provavelmente, o que deveria ser dito é que o método MetodoProtegido é visível na classe que define esse método e nas classes derivadas.

No caso, a classe que definiu o método MetodoProtegido foi a classe ModificadoresTeste. Como a classe ClasseDerivada herda de ModificadoresTeste, ela também tem acesso ao método MetodoProtegido, pois esse método contém o modificador de acesso protected.

Já a ClasseTeste possui um objeto do tipo ModificadoresTeste, mas não herda dessa classe, logo, esse objeto só conseguirá usar os métodos com modificadores de acesso public (que podem ser usados em qualquer arquivo ou classe dentro do mesmo projeto ou projetos externos) ou internal (que só podem ser usados dentro de arquivos ou classes dentro do mesmo projeto), que são os métodos MetodoPublico e MetodoInterno.

Espero ter ajudado!

Boa sorte em seus estudos!