Herança e Polimorfismo em Java

Herança e Polimorfismo em Java

University

10 Qs

quiz-placeholder

Similar activities

Quiz sobre Agendamento de Consultas Médicas

Quiz sobre Agendamento de Consultas Médicas

University

12 Qs

Elementos da Programação em Quiz

Elementos da Programação em Quiz

12th Grade - University

14 Qs

Questionário sobre Inteligência Artificial

Questionário sobre Inteligência Artificial

University

15 Qs

Quiz sobre Pontos de Função

Quiz sobre Pontos de Função

University

10 Qs

TD7-RA&RV

TD7-RA&RV

University

15 Qs

Fundamentos de Programación Orientada a Objetos

Fundamentos de Programación Orientada a Objetos

University

10 Qs

Revisão N2

Revisão N2

University

12 Qs

Quiz de Revisão sobre Orientação a Objetos

Quiz de Revisão sobre Orientação a Objetos

University

12 Qs

Herança e Polimorfismo em Java

Herança e Polimorfismo em Java

Assessment

Quiz

Information Technology (IT)

University

Hard

Created by

Jhoni Schulz

Used 3+ times

FREE Resource

10 questions

Show all answers

1.

MULTIPLE CHOICE QUESTION

30 sec • 1 pt

Media Image

Dado o diagrama de classes UML ilustrado ao lado,

sendo o script do PlantUML:

@startuml
abstract class Animal {
#String nome
#int idade
+abstract void emitirSom()
+void dormir()
}
class Cachorro extends Animal {
-String raca
+void emitirSom()
+void abanarRabo()
}
class Gato extends Animal {
-boolean pelagemLonga
+void emitirSom()
+void arranharMoveis()
}
@enduml

qual afirmação é INCORRETA?

A classe Animal pode ser instanciada diretamente

As classes Cachorro e Gato herdam o método dormir()

O método emitirSom() é um exemplo de polimorfismo

O modificador # significa protected

Answer explanation

A classe Animal é abstrata (abstract), portanto não pode ser instanciada diretamente. Todas as outras afirmações estão corretas.

2.

MULTIPLE CHOICE QUESTION

30 sec • 1 pt

Considere o código: Animal animal = new Cachorro(); animal.abanarRabo(); O que acontece na execução?

O código executa normalmente

Erro de compilação

RuntimeException

O método é executado com comportamento padrão

Answer explanation

O tipo da variável é Animal, que não declara o método abanarRabo(). O compilador verifica os métodos disponíveis em Animal, não em Cachorro.

3.

MULTIPLE CHOICE QUESTION

30 sec • 1 pt

Sobre polimorfismo, qual afirmação é CORRETA?

Só pode ser implementado com herança

Exige que todos os métodos da classe pai sejam sobrescritos

Permite que objetos de diferentes subclasses sejam tratados como objetos da superclasse

Impede a sobrescrita de métodos

Answer explanation

O polimorfismo permite tratar objetos de diferentes subclasses de maneira uniforme através do tipo da superclasse.

4.

MULTIPLE CHOICE QUESTION

30 sec • 1 pt

Media Image

Dado o diagrama abaixo, qual método NÃO pode ser chamado em um objeto do tipo Desenvolvedor?

gerenciarEquipe()

baterPonto()

calcularSalario()

programar()

Answer explanation

O método gerenciarEquipe() é exclusivo da classe Gerente e não está acessível para objetos da classe Desenvolvedor.

5.

MULTIPLE CHOICE QUESTION

30 sec • 1 pt

Em um diagrama de classes UML, o que indica uma linha contínua com triângulo vazado apontando para cima?

Implementação de interface

Herança/Generalização

Agregação

Composição

Answer explanation

Em UML, uma linha contínua com triângulo vazado representa uma relação de herança (generalização) entre classes.

6.

MULTIPLE CHOICE QUESTION

30 sec • 1 pt

Analise o código: public class Teste { public class Teste { public static void main(String[] args) {

List<Funcionario> funcionarios = new ArrayList<>();

funcionarios.add(new Desenvolvedor());

funcionarios.add(new Gerente());

funcionarios.stream() .map(f -> f.calcularSalario()) .forEach(System.out::println); // Bônus: calcular média salarial double mediaSalarial = funcionarios.stream() .mapToDouble(f -> f.calcularSalario()) .average() .orElse(0.0);

}

} O que será impresso?

5500.0, 7500.0 e média 6500.0

Erro de compilação

5000.0, 5000.0 e média 5000.0

NullPointerException ao calcular a média

Answer explanation

  • O código usa List e ArrayList para armazenar os funcionários

  • Usa Stream API para processar os dados de forma funcional

  • O Desenvolvedor recebe salarioBase * 1.1 = 5500.0

  • O Gerente recebe salarioBase * 1.5 = 7500.0

  • A média é (5500.0 + 7500.0) / 2 = 6500.0

  • O polimorfismo permite que cada classe calcule seu próprio salário

  • O uso de streams demonstra uma abordagem mais moderna para processar collections

7.

MULTIPLE CHOICE QUESTION

30 sec • 1 pt

O que acontece se uma interface estende outra interface?

A interface filha herda todos os métodos da interface pai

Ocorre um erro de compilação

A interface filha deve implementar todos os métodos

Interfaces não podem estender outras interfaces

Create a free account and access millions of resources

Create resources
Host any resource
Get auto-graded reports
or continue with
Microsoft
Apple
Others
By signing up, you agree to our Terms of Service & Privacy Policy
Already have an account?