FC ConcursosFC Concursos

Questão FC374717

A equipe de desenvolvimento da SEMCONGER está elaborando um sistema de gestão de frota de veículos oficiais. Diferentes abordagens de Programação Orientada a Objetos (POO) foram ut

Linguagens de Programação

Instituto Consulplan · 2025

A equipe de desenvolvimento da SEMCONGER está elaborando um sistema de gestão de frota de veículos oficiais. Diferentes abordagens de Programação Orientada a Objetos (POO) foram utilizadas para organizar o código de forma eficiente.

 

A seguir estão quatro trechos de código que implementam diferentes conceitos de POO; analise-os.

 

Código 1 – Classe base e Subclasse

public class Veiculo {

    protected String modelo;

    protected String cor;

}

 

public class Carro extends Veiculo {

    private int portas;

}

 

Código 2 – Método Redefinido na Subclasse

public class Veiculo {

    public void acelerar( ) {

       System.out.println("O veículo está acelerando.");

    }

}

 

public class Carro extends Veiculo {

   @Override

    public void acelerar( ) {

        System.out.println("O carro está acelerando rapidamente.");

    }

 }

 

Código 3 – Controle de Acesso aos Atributos

public class Veiculo {

    private String modelo;

 

    public void setModelo(String modelo) {

        this.modelo = modelo;

    }

 

    public String getModelo( ) {

     return modelo;

    }

}

 

Código 4 – Classe Não Instanciável

public abstract class Veiculo {

    protected String modelo;

 

     public abstract void acelerar( );

}

 

Com base nos códigos apresentados, assinale a alternativa que classifica corretamente os conceitos aplicados em cada um deles.

  1. Código 1. Encapsulamento; Código 2. Polimorfismo; Código 3. Herança; Código 4. Abstração.
  2. Código 1. Herança; Código 2. Polimorfismo; Código 3. Encapsulamento; Código 4. Abstração.
  3. Código 1. Polimorfismo; Código 2. Herança; Código 3. Encapsulamento; Código 4. Abstração.
  4. Código 1. Herança; Código 2. Abstração; Código 3. Polimorfismo; Código 4. Encapsulamento.
Mostrar resposta e comentário

Gabarito

B

Comentário do professor

Herança: no Código 1 a classe Carro usa extends Veiculo, reaproveitando atributos comuns (modelo, cor) definidos na classe base. Isso demonstra a hierarquia onde a subclasse herda características da superclasse.

Polimorfismo: no Código 2 a subclasse redefine o comportamento do método acelerar() usando @Override. Chamadas ao método podem resultar em implementações diferentes conforme o tipo real do objeto, caracterizando polimorfismo de subtipo.

Encapsulamento: no Código 3 o atributo modelo é private e acessado apenas por métodos públicos get/set, controlando leitura/escrita e protegendo o estado interno do objeto.

Abstração: no Código 4 a classe é abstract e declara o método abstrato acelerar(). A classe não pode ser instanciada e define apenas a interface conceitual que suas subclasses devem implementar.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo