Baixe o app para aproveitar ainda mais
Prévia do material em texto
19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 1/8 Ocultar opções de resposta Ocultar opções de resposta Pergunta 1 -- /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: Resposta correta As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. As asserções I e II são proposições falsas. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. Pergunta 2 -- /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: 19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 2/8 Ocultar opções de resposta 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. Resposta correta 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. Se o objeto especializado possuir um método que seja inexistente na superclasse, o método pode ser chamado usando polimorfismo. A ligação dinâmica só estará presente quando o método existente na superclasse é inexistente na subclasse. Considerando o polimorfismo, a classe genérica pode ser passada como parâmetro cujo argumento é de uma classe mais especializada. Pergunta 3 -- /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. 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: IMAGEM 8.PNG IMAGEM 8.PNG V, F, V, V. V V F V 19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 3/8 Ocultar opções de resposta Resposta corretaV, V, F, V. F, F, V, V. F, V, F, V. F, V, V, V. Pergunta 4 -- /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. 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: imagem 4.PNG imagem 4.PNG As asserções I e II são verdadeiras, e a II é uma justificativa correta da I. Resposta corretaA asserção I é uma proposição verdadeira, e a II é uma proposição falsa. As asserções I e II são verdadeiras, mas a II não é uma justificativa correta da I. As asserções I e II são proposições falsas. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 4/8 Ocultar opções de resposta Pergunta 5 -- /1 A imagem a seguir se trata de um trecho de código, no qual há uma classe Pessoa, sendo esta superclasse da subclasse Aluno. O método getNome está declarado na superclasse, enquanto o método getSerie está declarado na subclasse: Considerando essas informações e o conteúdo estudado sobre polimorfismo, pode-se afirmar que: imagem 1(1).PNG imagem 1(1).PNG no retorno do método obterNomeESerie há evidências de que o polimorfismo está sendo usado. o objeto aluno poderia ser declarado da seguinte maneira: Aluno aluno = new Pessoa(). Resposta correta a classe IniciarAplicacao não faz uso do polimorfismo em nenhum trecho de código. devido à classe Aluno herdar a classe Pessoa, o polimorfismo está sendo aplicado no método obterNomeESerie. se o parâmetro do método obterNomeESerie fosse do tipo pessoa o projeto compilaria. Pergunta 6 -- /1 O diagrama a seguir representa uma estrutura de classes, em que a superclasse Conta, é herdada pelas classes ContaCorrente e ContaPoupanca. A subclasse contaCorrente tem um objeto do tipo ChequeEspecial, e que através dele é possível obter o limite disponível de cheque especial. imagem 3.PNG imagem 3.PNG 19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 5/8 Ocultar opções de resposta Ocultar opções de resposta 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. É possível ter um método que recebe como parâmetro um objeto da classe ContaCorrente, porém, fazendo uso do polimorfismo, podemos passar como argumento um objeto da classe ContaPoupanca. Porque: II. A classe ContaPoupanca é subclasse da superclasse Conta, da mesma forma que a classe ContaCorrente. A seguir, assinale a alternativa correta: As asserções I e II são verdadeiras, e a II é uma justificativa correta da I. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. As asserções I e II são verdadeiras, mas a II não é uma justificativa correta da I. As asserções I e II são proposições falsas. Resposta corretaA asserção I é uma proposição falsa, e a II é uma proposição verdadeira. Pergunta 7 -- /1 Leia o trecho a seguir:“Uma exceção é um sinal que indica que algum tipo de condição excepcional ocorreu durante a execução do programa. Assim, exceções estão associadas a condições de erro que não tinham como ser verificadas durante a compilação do programa.”Fonte: RICARTE, I. L. M. Programação orientada a objetos: uma abordagem com Java. Campinas: Unicamp, 2001. p. 29. Disponível em: https://bit.ly/2NnCqML. Acesso em: 10 jun. 2020. Considerando estas informações e o conteúdo estudado sobre tratamento de exceções, analise as afirmativas a seguir: I. Uma exceção pode ser evitada fazendo uso de operador ternário. II. Uma exceção pode ser evitada fazendo uso do if-else. III. Uma exceção pode ser evitada fazendo uso do try-catch. IV. Quando uma referência está nula é gerado a exceção NullPointerException. Está correto apenas o que se afirma em: I e IV. II e III. 19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 6/8 Ocultar opções de resposta I e III. Resposta corretaI e II. II e IV. Pergunta 8 -- /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: a funcionalidade deve ser declarada no bloco finally. a funcionalidade deve ser declarada no bloco try. Resposta corretaa funcionalidade deve ser declarada no bloco catch. a funcionalidade deve ser declarada no bloco if. a funcionalidade deve ser declarada no bloco else. Pergunta 9 -- /1 19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 7/8 Ocultar opções de resposta Ocultar opções de resposta Uma exceção pode ser evitada fazendo uso de condicionadores como if-else ou operador ternário. Analisando a imagem a seguir, vê-se que uma possível correção para o código a fim de evitar a exceção seria utilizar um operador ternário ou um bloco if-else. De acordo com essas informações e com o conteúdo estudado sobre tratamento de exceção, analise as asserções a seguir e a relação proposta entre elas: I. O código if(produto != null) poderia ser utilizado acima da linha 6, assim evitaria a exceção NullPointerException. Porque: II. Com esta condição, teríamos certeza que a referência do objeto não estaria nula antes de tentar acessá-la. A seguir, assinale a alternativa correta: imagem 5.PNG imagem 5.PNG A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. As asserções I e II são verdadeiras, mas a II não é uma justificativa correta da I. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. Resposta corretaAs asserções I e II são verdadeiras, e a II é uma justificativa correta da I. As asserções I e II são proposições falsas. Pergunta 10 -- /1 Em determinado trecho de código, o sistema realiza a consulta de um dado no banco de dados por meio de alguma propriedade, que possivelmente pode ser um ID desse objeto. Quando o objeto é encontrado, suas informações são recuperadas e o objeto é criado através dessas propriedades. Considerando essas informações e o conteúdo estudado sobre tratamento de exceções, pode-se afirmar que: a consulta poderá não retornar nenhuma informação, e deve ser implementado a estrutura if-else para capturar esta exceção e criar fluxos alternativos. 19/08/2021 Ultra https://sereduc.blackboard.com/ultra/courses/_58750_1/outline/assessment/_3816088_1/overview/attempt/_13555237_1/review?columnId=_149… 8/8 Resposta corretaa consulta poderá não retornar nenhuma informação, o que resultaria em uma referência nula, e ao tentar acessar esta referência, implicaria na exceção NullPointerException caso o sistema tente acessá-la. ao realizar uma consulta no bando de dados, deve-se implementar os blocos try-catch para evitar NullPointerException que poderá ser gerado caso objeto não seja encontrado no banco de dados. a consulta sempre retornará um objeto do banco de dados com as informações existentes recuperadas do banco, e por este motivo haverá sempre uma referência não nula. a consulta poderá não retornar nenhuma informação, o que resulta em uma referência nula, e ao tentar acessar esta referência, será instanciado um novo objeto com atributos vazios.
Compartilhar