Herança e Polimorfismo em Java

Herança e Polimorfismo em Java

University

10 Qs

quiz-placeholder

Similar activities

Quiz sobre POO

Quiz sobre POO

University

15 Qs

Questionário Template Method

Questionário Template Method

University

10 Qs

Questionário sobre Inteligência Artificial

Questionário sobre Inteligência Artificial

University

15 Qs

Quiz Pemrograman Arduino

Quiz Pemrograman Arduino

10th Grade - University

15 Qs

java2/67

java2/67

12th Grade - University

10 Qs

Quiz Lógica de Programação em C Aula 1

Quiz Lógica de Programação em C Aula 1

University

15 Qs

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

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

University

12 Qs

Explorando o IoT

Explorando o IoT

University

15 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?