O código a seguir, caso fosse inserido entre as linhas 20 e ...

Próximas questões
Com base no mesmo assunto
Q19644 Programação
1 class Bicycle {
2 int cadence = 0;
3 int speed = 0;
4 int gear = 1;
5 void changeCadence(int newValue) {
6 cadence = newValue;
7 }
8 void changeGear(int newValue) {
9 gear = newValue;
10 }
11 void speedUp(int increment) {
12 speed = speed + increment;
13 }
14 void applyBrakes(int decrement) {
15 speed = speed - decrement;
16 }
17 void printStates() {
18 System.out.println("cadence: "+cadence+" speed: "+speed+" gear: "+gear);
19 }
20 }
21 class BicycleDemo {
22 public static void main(String[ ] args) {
23 // Cria dois objetos Bicycle diferentes
24 Bicycle bike1 = new Bicycle( );
25 Bicycle bike2 = new Bicycle( );
26 // Invoca os métodos desses objetos
27 bike1.changeCadence(50);
28 bike1.speedUp(10);
29 bike1.changeGear(2);
30 bike1.printStates();
31
32 bike2.changeCadence(50);
33 bike2.speedUp(10);
34 bike2.changeGear(2);
35 bike2.changeCadence(40);
36 bike2.speedUp(10);
37 bike2.changeGear(3);
38 bike2.printStates( );
39 }
40 }

Considerando o código Java acima, julgue os itens a seguir, acerca da programação orientada a objetos.
O código a seguir, caso fosse inserido entre as linhas 20 e 21, permitiria criar uma classe que herdasse as características da classe Bicycle.
class MountainBike inherit Bicycle {
// inserir nesse ponto novos campos e métodos
// relativos a uma mountain bike.
}
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: E - Errado

A questão aborda conceitos de herança em programação orientada a objetos (POO), especificamente na linguagem Java. Herança é um princípio pelo qual uma classe pode herdar características (atributos e métodos) de outra classe. Na linguagem Java, a herança é indicada pela palavra-chave extends, e não inherit, como sugerido no enunciado proposto.

Portanto, para criar uma classe MountainBike que herda as características da classe Bicycle, deveríamos utilizar o seguinte formato:

class MountainBike extends Bicycle {
    // inserir nesse ponto novos campos e métodos
    // relativos a uma mountain bike.
}

Além disso, é importante destacar que, ao herdar de uma classe, a nova classe pode não apenas usar os métodos e atributos da classe pai, mas também pode adicionar novos métodos e atributos (que seriam específicos da MountainBike neste caso) ou mesmo sobrescrever métodos existentes (override) para modificar seu comportamento.

Dada a informação errada de que a palavra-chave para herança em Java é inherit quando na verdade é extends, a alternativa correta é "E - Errado". A herança é um conceito fundamental em POO, pois permite a reutilização de código e a criação de uma estrutura de classes mais organizada e hierárquica. Compreender corretamente como a herança funciona em Java é crucial para o desenvolvimento de um código eficiente e bem estruturado.

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

 O mecanismo de herança é alcançado utilizando a palavra-chave extends e não inherit.

Clique para visualizar este comentário

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