Logo Passei Direto
Buscar
Material
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

1. O polimorfismo é um dos quatro pilares da programação de orientação a objetos. Portanto, marque a opção que melhor descreva o conceito de polimorfismo.
A. Quando uma classe herda membros de outra classe.
É o que se pode classificar como herança.
B. Quando uma classe possui métodos abstratos.
A classe que possui métodos abstratos deve, obrigatoriamente, ser uma classe abstrata.
C. Quando cada classe implementa o mesmo método de diferentes maneiras.
Quando múltiplas classes implementam a mesma interface, cada classe implementa os métodos de maneira diferente.
D. Quando uma subclasse usa um método da superclasse.
Quando uma subclasse apenas usa um método da superclasse, ele está simplesmente herdando este membro.
E. Quando uma classe possui um ou mais métodos sem retorno.
O fato de uma classe possuir mais de um método sem retorno não caracteriza polimorfismo, aliás, é algo extremamente normal em programação orientada a objetos.
2. Para podermos entender melhor e trabalharmos com polimorfismo, é de extrema importância sabermos alguns conceitos, como as "Interfaces". Portanto, marque a alternativa que melhor define interfaces em programação orientada a objetos.
A. São classes que possuem apenas atributos.
Uma classe que possui apenas atributos pode ser uma classe que apenas modela a criação de um objeto.
B. Interfaces são classes que não podem ser instanciadas.
Classes que não podem ser instanciadas geralmente são escritas como classes abstratas.
C.Diferentemente de uma classe, um tipo de interface não fornece nenhuma implementação.
Todos os métodos em um tipo de interfaces são abstratos.
D. Interfaces possuem variáveis de instância e métodos abstratos.
Um tipo de interface não possui variáveis de instância.
E. Interfaces são classes que possuem métodos que não podem ser implementados por outras classes.
Os métodos de uma interface devem ser implementados pela classes que as implementa.
3. Em relação ao polimorfismo, marque a alternativa incorreta.
A. O polimorfismo permite que programemos no geral, e não no específico.
O polimorfismo permite escrevermos programas que processam objetos que compartilham a mesma superclasse.
B. Programar no específico é quando o programa determina o tipo de objeto no momento da execução.
Ao realizarmos o processo polimórfico, precisamos programar no específico.
C. Para trabalharmos com polimorfismo, podemos herdar métodos de uma superclasse ou implementarmos uma interface.
Os métodos com mesma assinatura podem ser herdados de uma superclasse ou de uma interface implementada pela classe em questão.
D. A técnica de polimorfismo não permite que alteremos a implementação de um método.
Polimorfismo significa muitas formas, com isso, os métodos podem assumir ações diferentes de acordo com a especificação da classe que está utilizando-os. Portanto, devemos alterar a implementação destes métodos.
E. Novos tipos de objeto que podem responder às chamadas de método já existentes podem ser incorporados ao sistema sem alterar o sistema básico.
Somente o código cliente que instancia novos objetos precisa ser modificado para acomodar os novos tipos.
4. Qual a relação do polimorfismo com interfaces e superclasses?
A.  Há polimorfismo quando uma subclasse herda membros de uma superclasse.
A estrutura na qual uma subclasse herda membros de uma superclasse é chamada de herança.
B. Quando uma classe herda membros de uma interface, ativa um comportamento polimórfico.
Uma classe implementa uma interface, o comportamento de herança acontece quando uma subclasse herda de uma superclasse.
C. Quando um método existente em uma interface é usado por uma classe que não altera a implementação do método, temos um comportamento de polimorfismo.
Polimorfismo significa várias formas, com isso, alterar a ação do método de acordo com a especificidade de cada classe é necessário.
D. Quando uma classe implementa uma interface, ela se obriga a utilizar e implementar todos os métodos da interface, com isso, temos um comportamento polimórfico.
Quando uma classe implementa uma interface, é como se ela assinasse uma contrato que a obriga a utilizar os métodos existentes na interface. Esses métodos devem ser implementados pela classe, isto é, escritos de forma a atender a especificidade da classe.
E. Quando uma classe implementa uma interface, não há necessidade de utilizar todos os seus métodos. Entretanto, para que haja um comportamento polimórfico, é necessário implementar os métodos utilizados de acordo com sua necessidade.
Para que haja um comportamento polimórfico, é necessário que a classe implemente os métodos da interface, entretanto, há a necessidade de utilizar todos os métodos da interface que fora implementada.
5. Analise o código abaixo e marque a alternativa correta.
​​​​​​​
A. O código 1 refere-se à criação de uma classe abstrata. Para criarmos uma classe abstrata, é necessário utilizar as palavras-chave "abstract" e "class".
B. O código 2 está incorreto, pois o método locomover pertence à interface "InterfaceTeste". Quando a classe "Formiga" implementou a interface, a mesma alterou a implementação do método.
Este código nos apresenta um comportamento polimórfico, pois a classe "Formiga" que implementa a interface "InterfaceTeste" está utilizando o método locomover(), implementado de acordo com a especificação necessária para a mesma.
C. O código 3 está escrito de forma correta. No código 3, a classe "Passaro" implementa a interface "InterfaceTeste". Entretanto, ao utilizar o método locomover(), a mesma não fez a implementação necessária no método. Também, há falta de um chave, com isso, será apresentado um erro de compilação quando tentarmos utilizá-la.
D. O código 4 está escrito de forma errada, pois, para utilizarmos uma interface, devemos colocar a palavra-chave implements, não extends.
Para implementarmos uma interface, devemos colocar a palavra-chave interfaces antes do nome da interface. E para utilizarmos uma interface devemos colocar a palavra-chave implements, não extends. Assim, o código 4 deveria trazer a palavra-chave extends.
E. Sendo o código 1 a interface, podemos concluir que nos códigos 2, 3 e 4, temos um comportamento polimórfico.
Devido a alguns erros de escrita, apenas o código 2 apresenta um comportamento polimórfico

Mais conteúdos dessa disciplina