Buscar

AOL 4 Programação Orientada a Objetos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

Programação Orientada a Objetos - 2021 
Avaliação On-Line 4 (AOL 4) - Questionário 
1. Pergunta 1 
/1 
Dado que para haver a ligação dinâmica é necessário que haja o polimorfismo, e que por vez, 
necessita que haja herança entre a subclasse e superclasse, o código a seguir instancia um novo 
objeto do tipo Produto, que sobrescreve o método toString. 
 
imagem 6.PNG 
 
Considerando essas informações e o conteúdo estudado sobre polimorfismo e ligação dinâmica, 
analise as afirmativas a seguir e assinale V para a(s) verdadeira(s) e F para a(s) falsa(s). 
I. ( ) O objeto produto pode ser passado como parâmetro, já que o método aguarda o tipo 
Object. 
II. ( ) O código apresentado deixará de ser compilado, pois o parâmetro esperado é o Object. 
III. ( ) Nesse exemplo, no método toStringdeObject está sendo aplicado polimorfismo. 
IV. ( ) No código apresentado, os indícios do uso da ligação dinâmica são inexistentes. 
Agora, assinale a alternativa que apresenta a sequência correta: 
Ocultar opções de resposta 
1. 
V, V, F, F. 
2. 
V, F, V, F. 
Resposta correta 
3. 
V, F, F, V. 
4. 
F, V, F, F. 
5. 
V, F, F, F. 
2. Pergunta 2 
/1 
Considerando que a classe Bicicleta seja subclasse da superclasse MeioLocomocao. Ambas 
possuem o método locomover, e a subclasse Bicicleta possui o método pedalar. A subclasse 
sobrescreve o método locomover, e durante a instanciação do objeto da subclasse, sua 
referência está apontada para a superclasse. 
Considerando essas informações e o conteúdo estudado sobre polimorfismo, analise as 
asserções a seguir e a relação proposta entre elas: 
I. O código apresentará erro durante a execução. 
Porque: 
II. Uma referência de subclasse não pode ser referência de instancia de uma superclasse. 
A seguir, assinale a alternativa correta: 
Ocultar opções de resposta 
1. 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
Resposta correta 
2. 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta 
da I. 
3. 
As asserções I e II são proposições falsas. 
4. 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. 
5. 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
3. Pergunta 3 
/1 
Diante do cenário em que temos a classe Funcionario, Gerente e Programador, as classes 
Gerente e Programador são subclasses de Funcionario. A classe Funcionario possui métodos 
genéricos que foram sobrescritos por suas subclasses. 
Considerando essas informações e o conteúdo estudado sobre Polimorfismo e ligação dinâmica, 
analise as asserções a seguir e a relação proposta entre elas: 
I. Por ser subclasse, a classe Programador pode ser instanciada em uma referência da classe 
Funcionario. 
Porque: 
II. O polimorfismo permite que subclasses sejam instanciadas em referências de suas 
superclasses. 
A seguir, assinale a alternativa correta: 
Ocultar opções de resposta 
1. 
As asserções I e II são proposições falsas. 
2. 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta 
da I. 
3. 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
4. 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
5. 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. 
Resposta correta 
4. Pergunta 4 
/1 
Analisando as classes a seguir, vê-se que o método Start possui o operador instanceof declarado 
na linha 10 da classe, e ele é usado para comparar se um objeto é instância de uma classe 
específica. Basicamente, ele está comparando se o objeto produto é um Eletrodomestico. Na 
linha 11, o objeto produto qual é recebido por parâmetros, é realizado um cast para o tipo 
Eletrodoméstico, ou seja, ele está assumindo sua forma original, caso a verificação acima (linha 
10) seja verdadeira. 
 
IMAGEM 8.PNG 
 
Considerando essas informações e o conteúdo estudado sobre polimorfismo e ligação dinâmica, 
quanto à execução do código acima, a execução do método consultarPreco, onde x e y são 
quaisquer valores numéricos, analise as afirmativas a seguir e assinale V para a(s) verdadeira(s) 
e F para a(s) falsa(s): 
I. ( ) Se o produto obtido for um objeto de Eletrodoméstico, ocorrerá o polimorfismo. 
II. ( ) Se o produto obtido for um objeto de Movel, ocorrerá o polimorfismo. 
III. ( ) Se o produto obtido for um objeto de Eletrodomestico, a ligação dinâmica será aplicada. 
IV. ( ) Se o produto obtido for um objeto de Movel, a ligação dinâmica será aplicada. 
Agora, assinale a alternativa que apresenta a sequência correta: 
Ocultar opções de resposta 
1. 
F, V, F, V. 
2. 
V, V, F, V. 
Resposta correta 
3. 
F, F, V, V. 
4. 
V, F, V, V. 
5. 
F, V, V, V. 
5. Pergunta 5 
/1 
Um dos erros mais comuns durante a execução de um programa é o erro NullPointerException, 
o qual indica que a aplicação tentou usar uma referência nula, ou seja, que ainda não possui um 
objeto definido para aquela referência. A imagem a seguir é uma estrutura de código que 
deverá exibir o detalhe existente no método toString da classe Produto. 
 
imagem 4.PNG 
 
Considerando estas informações e o conteúdo estudado sobre tratamento de exceções, analise 
as asserções a seguir e a relação proposta entre elas: 
I. O código apresentará a exceção NullPointerException. 
Porque: 
II. O objeto produtos da classe BancoDeDadosVirtual não foi instanciado. 
A seguir, assinale a alternativa correta: 
Ocultar opções de resposta 
1. 
As asserções I e II são verdadeiras, mas a II não é uma justificativa correta da I. 
2. 
As asserções I e II são proposições falsas. 
3. 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
4. 
As asserções I e II são verdadeiras, e a II é uma justificativa correta da I. 
5. 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
Resposta correta 
6. Pergunta 6 
/1 
As capturas de exceções são feitas para que se possa realizar alguma ação diante de um cenário 
onde há alguma probabilidade de haver erros e diante destes erros podem ser criados fluxos 
alternativos, ou apenas registrar logs sobre os erros. Para o registro de logs, geralmente é 
utilizada alguma biblioteca, como o log4j, por exemplo, mas não necessariamente são 
utilizados para registrar as exceções, pois também servem para registrar informações sobre a 
execução do sistema, podendo ser declarados em qualquer trecho do código. 
Considerando essas informações e o conteúdo estudado sobre tratamento de exceções, para 
capturar uma exceção e registrar em um log, pode-se afirmar que: 
Ocultar opções de resposta 
1. 
a funcionalidade deve ser declarada no bloco else. 
2. 
a funcionalidade deve ser declarada no bloco finally. 
3. 
a funcionalidade deve ser declarada no bloco if. 
4. 
a funcionalidade deve ser declarada no bloco try. 
5. 
a funcionalidade deve ser declarada no bloco catch. 
Resposta correta 
7. Pergunta 7 
/1 
O polimorfismo geralmente é implementado pelas linguagens orientadas a objeto quando é 
utilizada a ligação dinâmica (dynamic binding), na qual apenas durante a execução da aplicação 
é determinado qual o método deverá ser utilizado. 
Considerando estas informações e o conteúdo estudado sobre polimorfismo e ligação dinâmica, 
analise as asserções a seguir e a relação proposta entre elas: 
I. O polimorfismo e a ligação dinâmica estão associados. 
Porque: 
II. A ligação dinâmica é o resultado quando o próprio Java determina qual método deve ser 
utilizado, diante do cenário onde há o polimorfismo aplicado. 
A seguir, assinale a alternativa correta: 
Ocultar opções de resposta 
1. 
As asserções I e II são verdadeiras, mas a II não é uma justificativa correta da I. 
2. 
As asserções I e II são verdadeiras, e a II é uma justificativa correta da I. 
Resposta correta 
3. 
As asserçõesI e II são proposições falsas. 
4. 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
5. 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
8. Pergunta 8 
/1 
Leia o trecho a seguir: 
“Para que o polimorfismo possa ser utilizado, é necessário que os métodos que estejam sendo 
definidos nas classes derivadas tenham exatamente a mesma assinatura do método definido na 
superclasse; neste caso, está sendo utilizado o mecanismo de redefinição de métodos 
(overriding).”Fonte: RICARTE, I. L. M. Programação orientada a objetos: uma abordagem 
com Java. Campinas: Unicamp, 2001. p. 7. Disponível em: https://bit.ly/2NnCqML. Acesso 
em: 10 jun. 2020. 
Complementando o trecho apresentado, um método que contenha como parâmetro uma classe 
genérica pode receber objetos mais especializados abaixo de sua hierarquia. 
Considerando estas informações e o conteúdo estudado sobre polimorfismo e ligação dinâmica, 
assinale a afirmativa correta: 
Ocultar opções de resposta 
1. 
Considerando a ligação dinâmica, se não definido pelo programador qual método será 
executado, quem decidirá é o Java em tempo de compilação. 
2. 
A ligação dinâmica só estará presente quando o método existente na superclasse é 
inexistente na subclasse. 
3. 
Considerando o polimorfismo e a ligação dinâmica, cabe ao próprio Java definir em 
tempo de execução qual método será utilizado. 
Resposta correta 
4. 
Considerando o polimorfismo, a classe genérica pode ser passada como parâmetro cujo 
argumento é de uma classe mais especializada. 
5. 
Se o objeto especializado possuir um método que seja inexistente na superclasse, o método 
pode ser chamado usando polimorfismo. 
9. Pergunta 9 
/1 
O bloco if-else é uma estrutura de condição que avalia se dada condição é verdadeira ou falsa. 
Esta estrutura pode ser utilizada para evitar alguns erros que podem ocorrer durante a execução 
do código através de determinadas condições. 
Considerando essas informações e o conteúdo estudado sobre tratamento de exceções, assinale 
a alternativa correta: 
Ocultar opções de resposta 
1. 
O bloco try-catch é similar a utilização do bloco if-else. 
2. 
O bloco if-else não pode ser utilizado para capturar exceções. 
Resposta correta 
3. 
O bloco try-catch também pode ser utilizado para evitar exceções. 
4. 
O bloco finally do catch também é utilizado para evitar exceções. 
5. 
As exceções são capturadas pelo bloco if e tratadas pelo bloco else. 
10. Pergunta 10 
/1 
Os blocos try-catch podem ser utilizados com o bloco finally, declarado ao final. No bloco try 
deve conter códigos que poderão gerar exceção, e os blocos catches, são responsáveis pela 
captura das exceções se geradas, e neles deve, se necessário, realizar os devidos tratamentos 
das exceções. A imagem a seguir é um exemplo com a estrutura dos blocos try-catch-finally. 
 
IMAGEM 9.PNG 
 
Considerando essas informações e o conteúdo estudado sobre tratamento de exceções, analise 
as asserções a seguir e a relação proposta entre elas: 
I. O código apresentado na imagem apresentará uma exceção do tipo NullPointerException e o 
bloco finally não será executado. 
Porque: 
II. Quando há exceções capturadas pelo bloco catch, o bloco finally não é executado. 
A seguir, assinale a alternativa correta: 
Ocultar opções de resposta 
1. 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
2. 
As asserções I e II são proposições falsas. 
Resposta correta 
3. 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
4. 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta 
da I. 
5. 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.

Outros materiais