Considere os modificadores a seguir. I. Internal. II. Pri...
I. Internal. II. Private. III. Protected. IV. External.
Assinale a opção que indica os modificadores da lista acima que, além do modificador public, são válidos no C#, quando da especificação da acessibilidade de um membro ou tipo.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a A - I, II e III, apenas.
No C#, a acessibilidade dos membros ou tipos é controlada por meio de modificadores de acesso. Os modificadores de acesso definem onde e como as propriedades, métodos, campos e outros membros da classe podem ser acessados. Vamos agora discutir a justificativa para a alternativa correta:
- Internal: Este modificador permite que o acesso seja limitado ao assembly atual, ou seja, somente o código dentro do mesmo programa pode acessar o membro ou tipo. Isso é útil quando você deseja ocultar a implementação interna de sua biblioteca, mas ainda permitir que todo o código dentro do assembly a utilize.
- Private: Este é o mais restritivo dos modificadores de acesso. Um membro marcado como private só pode ser acessado por outros membros dentro da mesma classe ou estrutura. Isso é usado para ocultar os detalhes de implementação e evitar que o estado interno do objeto seja exposto ou alterado de forma inadequada.
- Protected: Este modificador permite que o membro seja acessado dentro da sua própria classe e por classes derivadas. Usar protected é uma maneira de garantir que somente as subclasses tenham acesso a determinados campos ou métodos, o que é uma prática comum na programação orientada a objetos para controlar a herança e o polimorfismo.
Esses três modificadores são válidos e comumente usados em C# para controlar a visibilidade de membros e tipos. No entanto, a opção IV. External não é um modificador de acesso válido em C#. Na verdade, não existe um modificador chamado external; o mais próximo que temos seria o extern, que é usado para declarações de métodos externos, geralmente em interoperabilidade com códigos nativos, mas não é um modificador de acesso.
Portanto, como a questão pediu para identificar os modificadores de acesso válidos em C# (além do public), a única alternativa que contém somente modificadores válidos de acesso é a A - I, II e III, apenas.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Basicamente na Linguagem C podemos ter os modificadores de acesso:
- Public
- Protected
- Protected Internal
- Private
- Internal
Gabarito LETRA A
1. Public: aberto para todos;
2. Protected: acessado pela classe e subclasses
3. Private: apenas pela própria classe/sctruct
4. Internal: acessado no mesmo assembly
Ref.: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/access-modifiers
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo