Em termos de linguagem de programação, herança refere-se à c...

Próximas questões
Com base no mesmo assunto
Ano: 2010 Banca: FCC Órgão: TRE-AM
Q1231639 Programação
Em termos de linguagem de programação, herança refere-se à capacidade de reutilização de uma classe para criar uma ou várias subclasses com funcionalidade adicional, dependendo da linguagem de programação abordada. Nesse sentido, é correto o que se afirma em 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Resposta Correta: Alternativa B

Vamos entender o conceito abordado pela questão. Quando falamos em herança no contexto de programação orientada a objetos (POO), estamos nos referindo a um mecanismo que permite que uma classe (considerada superclasse ou classe base) passe suas características (atributos e métodos) para outra classe (conhecida como subclasse ou classe derivada). Este é um princípio fundamental para o reuso de código e para a criação de estruturas hierárquicas de classes.

A questão pede para identificar quais linguagens de programação permitem herança de múltiplas subclasses (conhecida como herança múltipla) e quais permitem apenas herança de única subclasse (herança simples ou herança única). Na herança múltipla, uma classe pode herdar características de mais de uma classe base, enquanto na herança única, uma classe só pode herdar de uma única classe base.

Na Alternativa B, temos a afirmação de que C++ suporta herança de múltiplas subclasses, o que é verdadeiro. C++ é conhecida por permitir que uma classe derive de mais de uma classe base, o que é um exemplo de herança múltipla. Já Delphi e Java são citados como linguagens que suportam apenas a herança de única subclasse. Isso também está correto, pois tanto Delphi (embora com algumas extensões que permitem algo similar à herança múltipla) quanto Java não permitem herança múltipla de classes (Java permite herança múltipla de interfaces, mas isso é diferente da herança múltipla de classes).

Portanto, a Alternativa B está correta porque caracteriza corretamente o tipo de herança suportado pelas linguagens mencionadas, conforme os princípios da POO e as especificidades de cada uma dessas linguagens de programação.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo