Baixe o app para aproveitar ainda mais
Prévia do material em texto
22/03/2023, 00:43 Avaliação II - Individual about:blank 1/7 Prova Impressa GABARITO | Avaliação II - Individual (Cod.:768337) Peso da Avaliação 1,50 Prova 57737165 Qtd. de Questões 10 Acertos/Erros 9/1 Nota 9,00 A herança, juntamente ao encapsulamento, o polimorfismo e a abstração, representa um dos pilares da programação orientada a objetos e pode, quando bem modelada e utilizada, diminuir o esforço na manutenção do código-fonte. Considerando o relacionamento de herança entre duas ou mais classes, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A herança possibilita o compartilhamento de atributos entre uma superclasse subclasse, limitando esse compartilhamento para os atributos indicados com o modificador "private". ( ) A palavra-chave extends define que uma classe está estendendo outra, que em outras palavras significa o uso de herança na linguagem de programação Java. ( ) A herança possibilita o compartilhamento de métodos entre uma superclasse subclasse, limitando esse compartilhamento para alguns tipos especiais de métodos. ( ) A herança de métodos é possível, porém os métodos construtores podem ser reescritos através do polimorfismo. Assinale a alternativa que apresenta a sequência CORRETA: A F - V - F - F. B V - F - F - V. C F - F - V - V. D V - V - V - F. Quando uma classe herda de outra, ela herda implementação, atributos e comportamento. Isso significa que todos os métodos e atributos disponíveis na interface externa da classe mãe estarão também na interface externa da filha (SINTES, 2002). Uma classe construída através de herança pode ter tipos importantes de métodos e atributos. FONTE: SINTES, Anthony. Aprenda programação orientada a objetos em 21 dias. Tradução João Eduardo Nóbrega Tortello. São Paulo: Pearson Education do Brasil, 2002. Sobre os tipos de métodos e atributos, assinale a alternativa INCORRETA: A Sobreposto. VOLTAR A+ Alterar modo de visualização 1 2 22/03/2023, 00:43 Avaliação II - Individual about:blank 2/7 B Novo. C Replicado. D Recursivo. O conceito de classes abstrata, através de suas características especiais, fornece ao conceito de herança uma maior confiabilidade uma vez que as classes modeladas com herança precisam ser melhor idealizadas e projetadas. Dessa forma, avalie o código-fonte da classe Atleta, a seguir, e classifique V para as sentenças verdadeiras e F para as falsas: package fontes; public class Atleta{ private int pais; private String modalidade; private boolean medalistaOlimpico; public abstract void competir(String modalidade) { System.out.println("É especialista em " + modalidade); } public void competirPor(int pais){ System.out.println("O atleta compete por " + pais); } } ( ) A classe em questão apresenta problemas de sintaxe. ( ) O método competirPor(int pais) não está gerando erro de sintaxe e usa corretamente a palavra- chave void. ( ) O método competirPor(int pais) não possui um retorno de tipo definido. ( ) O método "competir(String modalidade)" gera erro de sintaxe, pois não necessita da palavra- chave abstract. Assinale a alternativa que apresenta a sequência CORRETA: A V - F - V - V. B V - V - V - V. C V - V - F - F. D F - F - V - V. O polimorfismo é um mecanismo poderoso da programação orientada a objetos, pois permite que se adicionem novas funcionalidades a um software sem alterar partes desse mesmo software que 3 4 22/03/2023, 00:43 Avaliação II - Individual about:blank 3/7 já estejam funcionando. Com relação ao polimorfismo, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O polimorfismo de sobreposição consiste na colocação de novos parâmetros em outro método que possua o mesmo nome de um método já existente. ( ) O polimorfismo paramétrico é altamente dependente da linguagem de programação, por este motivo nem todas as linguagens de programação orientadas a objetos o implementam. ( ) A sobrecarga permite redefinir completamente um método, substituindo-o nas classes que fizerem uso deste tipo de polimorfismo. ( ) As interfaces são uma maneira eficiente de implementar o polimorfismo. Agora, assinale a alternativa que apresenta a sequência CORRETA: A V - V - F - V. B V - V - V - F. C F - V - F - V. D V - F - F - V. Polimorfismo é o princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma identificação (assinatura), mas comportamentos distintos, especializados para cada classe derivada, usando para tanto uma referência a um objeto do tipo da superclasse. Sobre um exemplo de polimorfismo, assinale a alternativa CORRETA: A 5 22/03/2023, 00:43 Avaliação II - Individual about:blank 4/7 B C D Todas estão corretas! O Polimorfismo de inclusão permite que se defina um novo comportamento para um objeto sem que se faça alterações nos que já estão funcionando, minimizando consideravelmente os custos e reduzindo o tempo para novas implementações. Considerando que a figura a seguir traz duas classes relacionadas a uma interface, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O método encript() da interface é implicitamente abstrato. ( ) Na linguagem de programação Java, demonstraríamos que SHA implementa IAlgoritmoCriptografia através da palavra reservada extends. ( ) Um método existente em outra classe cuja assinatura seja “public void criptografar(IAlgoritmoCriptografia iac)” pode receber como parâmetro tanto um objeto da classe SHA quanto um objeto da classe DES. ( ) Podemos dizer que tanto SHA quanto DES implementam IAlgoritmoCriptografia. 6 22/03/2023, 00:43 Avaliação II - Individual about:blank 5/7 Agora, assinale a alternativa que apresenta a sequência CORRETA: A V - V - F - F. B V - F - V - V. C V - V - F - V. D F - V - F - V. A linguagem de programação Java implementa o encapsulamento através de modificadores de visibilidade que podem ser colocados na frente de classes, atributos e métodos. Com relação à utilização do encapsulamento na linguagem de programação Java, assinale a alternativa CORRETA: A O modificador default permite o acesso padrão a todos dentro da mesma aplicação. B O modificador public não pode ser usado na frente de atributos. C O modificador private permite o acesso somente dentro do mesmo pacote. D Um método com o modificador public não faz sentido em uma classe com o modificador default. Existem três características mais importantes na Programação Orientada a Objetos (POO). Existe um conceito da programação orientada a objetos, que segundo Deitel e Deitel (2010), permite escrever programas que processam objetos que compartilham a mesma superclasse como se todos fossem objetos desta. FONTE: DEITEL, H. M.; DEITEL P. J. Java: Como Programar, 8a Edição. São Paulo: Pearson, 2010 Qual é esse conceito? 7 8 22/03/2023, 00:43 Avaliação II - Individual about:blank 6/7 A Reescrita. B Polimorfismo. C Encapsulamento. D Herança. Como regra geral, os atributos de uma classe devem ser ocultos dos demais objetos do sistema, com o objetivo de garantir o encapsulamento. Entretanto, caso algum destes atributos deva ser exposto, existem vários tipos de exposição, através dos métodos getters e setters. Com relação à utilização dos getters e setters em uma classe, classifique V para as sentenças verdadeiras e F para as falsas: I- Os métodos getters fornecem acesso de escrita a um atributo. II- Os métodos setters permitem que se altere o valor de um atributo de um objeto. III- Uma das vantagens dos setters é que se pode fazer a chamada dos mesmos sem instanciar o objeto onde eles estão. IV- Os métodos setters sempre devem retornar o valor que acabaram de passar ao atributo. Agora, assinale a alternativa CORRETA: A Somente a sentença II está correta. B Somente a sentença IV está correta. C As sentenças III e IV estão corretas. D As sentenças I e III estão corretas. O encapsulamentoé um dos pilares da programação orientada a objetos, e sua utilização de forma correta serve como embasamento para os outros dois pilares: a herança e o polimorfismo. Com relação ao encapsulamento, assinale a alternativa CORRETA: A O objetivo principal do encapsulamento é obter um alto acoplamento entre as classes. B O encapsulamento permite que os objetos se comuniquem através de mais caminhos. C Através do encapsulamento, podemos proteger os valores internos dos objetos de acessos desnecessários. D Para fazer uso do encapsulamento, basta modificarmos a visibilidade de nossos atributos. 9 10 22/03/2023, 00:43 Avaliação II - Individual about:blank 7/7 Imprimir
Compartilhar