Determinado órgão público federal deseja implantar um sistem...

Próximas questões
Com base no mesmo assunto
Q75426 Programação
Determinado órgão público federal deseja implantar um sistema de consulta na Internet. A plataforma utilizada será ASP.NET e a linguagem de programação, C#. Na modelagem orientada a objetos desse sistema, é importante considerar que a linguagem adotada
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: E - implementa, no âmbito da generalização, somente herança simples.

A questão aborda conceitos importantes da programação orientada a objetos em C# no contexto do desenvolvimento de aplicações com ASP.NET. Para responder corretamente, é necessário entender a forma como a linguagem C# manipula conceitos como classes abstratas, polimorfismo, namespaces, interfaces e herança. Vamos discutir agora por que a Alternativa E é a correta:

O C# é uma linguagem de programação que suporta a herança, que é um mecanismo fundamental na programação orientada a objetos (OOP). No entanto, C# permite apenas herança simples, o que significa que uma classe pode herdar diretamente de no máximo uma classe base. Esse tipo de herança é projetado para promover a reutilização do código e uma hierarquia de classes clara. A herança múltipla, onde uma classe pode herdar de mais de uma classe base, pode levar a complicações como a ambiguidade de chamadas de métodos e a duplicação de estado. No C#, as interfaces são utilizadas para fornecer um efeito similar à herança múltipla, permitindo que uma classe implemente múltiplas interfaces e, assim, compartilhe comportamentos sem os desafios associados à herança múltipla.

As demais alternativas são incorretas porque:

  • Classes abstratas: C# permite o uso de classes abstratas, que são essenciais para definir contratos para subclasses e fornecer implementações parciais.
  • Polimorfismo: C# suporta polimorfismo, que é a capacidade de uma referência de uma classe base apontar para objetos de subclasses, e isso é crucial para design de software flexível e reutilizável.
  • Namespaces: A linguagem utiliza namespaces para organizar classes e outros tipos em grupos lógicos, facilitando a gestão e a utilização do código, mas não está associado diretamente com as associações entre classes.
  • Interfaces: C# utiliza interfaces para definir contratos que as classes podem implementar, fornecendo uma forma de obter funcionalidades semelhantes à herança múltipla e mantendo a coesão e modularidade.

Concluindo, a resposta correta é a Alternativa E, pois reflete a característica da linguagem C# de implementar herança simples, permitindo que uma classe herde de apenas uma classe base, diferentemente de linguagens que suportam herança múltipla.

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

E se for uma Interface? Permite sim uma herança múltipla!

Gabarito: E

Os namespaces servem para organizar as classes de uma biblioteca, e não associá-las.

Clique para visualizar este comentário

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