O sistema de controle automotivo SisAut foi modelado orienta...

Próximas questões
Com base no mesmo assunto
Q1978811 Engenharia de Software
O sistema de controle automotivo SisAut foi modelado orientado a objetos. O SisAut possui a classe Veículo, que compartilha seu código-fonte com suas subclasses: Carro e Moto. As subclasses Carro e Moto aproveitam os métodos e atributos da classe Veículo.
Em orientação a objeto, o mecanismo pelo qual uma classe pode estender outra classe ou ser estendida por outra classe é:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a B - herança.

A questão aborda conceitos fundamentais de Orientação a Objetos (OO), especificamente o mecanismo pelo qual uma classe pode estender ou ser estendida por outra classe, conhecido como herança. Esse conceito é crucial para o reuso de código e a criação de hierarquias de classes em sistemas orientados a objetos.

Herança é o conceito pelo qual uma classe, denominada subclasse, pode herdar métodos e atributos de outra classe, denominada superclasse. No exemplo da questão, a classe Veículo é a superclasse, enquanto Carro e Moto são subclasses que herdam seus métodos e atributos. Este mecanismo permite que as subclasses reutilizem e extendam funcionalidades da superclasse, promovendo a reutilização de código e a manutenção mais fácil.

Agora, vamos analisar as alternativas incorretas:

A - interface: Uma interface em orientação a objetos é um contrato que define um conjunto de métodos que uma classe deve implementar. Diferente da herança, a interface não fornece implementação de métodos ou atributos, apenas suas assinaturas. Portanto, não é a alternativa correta para o mecanismo descrito na questão.

C - pacotes: Pacotes são utilizados para agrupar classes e interfaces que estão relacionadas entre si, facilitando a organização e modularização do código. Eles não têm relação direta com o mecanismo de herança entre classes, por isso, essa alternativa está incorreta.

D - agregação: Agregação é um tipo de associação que representa uma relação "todo-parte" entre objetos, onde um objeto é composto por outros objetos. Diferente da herança, a agregação não trata da extensão ou reutilização de código entre classes, mas sim da composição de objetos. Portanto, esta alternativa também está incorreta.

E - encapsulamento: Encapsulamento é o conceito de esconder os detalhes internos de uma classe e expor apenas o necessário através de interfaces públicas. Ele é fundamental para a proteção dos dados e a manutenção do código, mas não se refere ao mecanismo de estender ou herdar funcionalidades entre classes. Assim, esta alternativa está incorreta.

Com isso, fica claro que a alternativa correta é B - herança, pois é o mecanismo que permite que uma classe estenda outra, aproveitando e potencialmente modificando seus métodos e atributos.

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

Gabarito B - herança;

Herança: Programação Orientada a Objetos

A Herança possibilita que as classes compartilhem seus atributos, métodos e outros membros da classe entre si. Para a ligação entre as classes, a herança adota um relacionamento esquematizado hierarquicamente.

Na Herança temos dois tipos principais de classe:

Classe Base: A classe que concede as características a uma outra classe.

Classe Derivada: A classe que herda as características da classe base.

O fato de as classes derivadas herdarem atributos das classes bases assegura que programas orientados a objetos cresçam de forma linear e não geometricamente em complexidade. Cada nova classe derivada não possui interações imprevisíveis em relação ao restante do código do sistema.

Com o uso da herança, uma classe derivada geralmente é uma implementação especifica de um caso mais geral. A classe derivada deve apenas definir as características que a tornam única.

Por exemplo: uma classe base que serviria como um modelo genérico pode ser a classe Pessoa com os campos Nome e Idade. Já uma classe derivada poderia ser Funcionário com os campos Nome e Idade herdados da classe Pessoa, acrescido do campo Cargo.

https://www.devmedia.com.br/conceitos-e-exemplos-heranca-programacao-orientada-a-objetos-parte-1/18579

Rapazz, nem parece FGV.

essa foi pra não zerar..

estender outra classe

Clique para visualizar este comentário

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