Na linguagem C#, a palavra reservada “sealed” pode ser utili...

Próximas questões
Com base no mesmo assunto
Q1655587 Programação
Na linguagem C#, a palavra reservada “sealed” pode ser utilizada na declaração de classes. Ela tem a função de
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: C - impedir que a classe seja derivada por outras classes.

A linguagem de programação C# oferece uma série de palavras reservadas que desempenham funções específicas na definição de classes e seus comportamentos. Uma dessas palavras é o sealed, que desempenha um papel importante na hierarquia de classes.

Quando declaramos uma classe como sealed, estamos indicando que essa classe não pode ser usada como base para outras classes. Em outras palavras, não é possível criar subclasses (classes derivadas) a partir de uma classe marcada com a palavra sealed. Isso é útil em cenários onde queremos garantir que a implementação de uma classe não seja alterada através da herança ou quando queremos evitar a criação de uma hierarquia de classes mais complexa.

Este conceito é importante para entender o princípio da herança na programação orientada a objetos (POO). A herança permite que uma classe herde características de outra classe. No entanto, quando uma classe é sealed, sinalizamos que ela foi projetada para permanecer inalterada, sem a possibilidade de extensão por herança.

Isso pode ser útil para diversas razões, como otimização de desempenho (evitando o custo adicional de virtualização de métodos), segurança (prevenindo que o comportamento da classe seja modificado de maneiras inesperadas), ou mesmo para prover uma semântica clara da finalidade da classe no design do seu sistema.

Agora, vamos explicar por que as outras alternativas estão incorretas:

  • Alternativa A: A palavra sealed não tem relação com o requisito de métodos serem sobrescritos, mas sim com a prevenção de herança.
  • Alternativa B: Sealed não impede a instanciação múltipla de uma classe; ela pode ser instanciada quantas vezes for necessário.
  • Alternativa D: O alcance de uma classe em termos de namespace não é afetado pela palavra sealed.
  • Alternativa E: Imutabilidade é um conceito diferente e não está relacionado à herança de classes. Uma classe imutável é uma classe cujas instâncias não podem ter seus estados alterados após a criação.

Portanto, a resposta correta é a Alternativa C, pois ela reflete corretamente o propósito da palavra reservada sealed em C#.

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

A palavra reservada sealed além de impedir que uma classe seja derivada por outras, também pode ser usada em um método ou propriedade que substitui um método ou propriedade virtual em uma classe base. Com isso, você pode permitir que classes sejam derivadas de sua classe e impedir que substituam métodos ou propriedades virtuais.

Resposta correta letra(C)

Equivalente ao "final" do Java

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo