Baixe o app para aproveitar ainda mais
Prévia do material em texto
04/04/22, 14:29 Avaliação Final (Objetiva) - Individual 1/5 Prova Impressa GABARITO | Avaliação Final (Objetiva) - Individual (Cod.:687707) Peso da Avaliação 3,00 Prova 41548275 Qtd. de Questões 10 Acertos/Erros 9/1 Nota 9,00 O padrão de projeto Singleton aumenta a qualidade e a produtividade do desenvolvimento de software orientado a objetos, pois é capaz de solucionar problemas rotineiros que normalmente ocorrem durante as etapas do desenvolvimento de um software. Esse padrão descreve uma implementação na qual uma classe é instanciada uma única vez durante a execução de uma aplicação. Referente aos códigos-fonte que implementam um exemplo da aplicação Singleton e sua execução para a classe Memoria, classifique V para as sentenças verdadeiras e F para as falsas: (1)public class Memoria{ (2) private static Memoria memoryInstance; (3) private double quantidadeMemoria; (4) (5) private Memoria(){} (6) (7) (8) public static Memoria getInstance() { (9) if(memoryInstance == null) { (10) memoryInstance = new Memoria(); (11) } (12) return memoryInstance; (13) } (14) (15) public double getQuantidadeMemoria() { (16) return this.quantidadeMemoria; (17) } (18) (19) public void setQuantidadeMemoria (float quantidadeMemoria) { (20) this.quantidadeMemoria = quantidadeMemoria; (21) } (22)} (1) public static void main(String[] args){ (2) (3) Memoria memoria1 = Memoria.getInstance(); (4) System.out.println(memoria1); (5) } ( ) Na linha 3, do código-fonte de execução da classe Memoria, o trecho Memoria.getInstance() cria, e retorna, um objeto único da classe Memoria. ( ) A linha 5, do código-fonte de classe Memoria, utiliza um modificador de visibilidade igual ao padrão usado nas implementações de classes Java, e é usado como um recurso de segurança do padrão Sigleton. ( ) A linha 3, do código-fonte de execução da classe Memoria, poderia ser substituído pelo código Memoria memoria1 = new Memoria(), sem qualquer prejuízo para o funcionamento chave do padrão Singleton. ( ) A linha 5, do código-fonte da classe Memoria, utiliza um modificador de visibilidade que foge ao padrão usado nas implementações de classes Java, uma vez que complementa a capacidade do padrão Singleton em permitir a criação de apenas um objeto para as classes as quais os comportamentos necessitam dessa condição. Assinale a alternativa que apresenta a sequência CORRETA: A V - F - F - V. B F - V - V - F. C F - F - V - V. D V - V - F - F. Existem três características mais importantes na Programação Orientada a Objetos (POO). Neste sentido, temos um conceito de programação orientada a objetos que promove a reutilização de software. Qual é esse conceito? VOLTAR A+ Alterar modo de visualização 1 2 04/04/22, 14:29 Avaliação Final (Objetiva) - Individual 2/5 A Sobrecarga de métodos. B Herança. C Abstração de dados. D Polimorfismo. A estrutura de uma classe na linguagem de programação Java comporta um nome, um conjunto de atributos, também conhecidos como o estado desta classe e um conjunto de métodos, também conhecidos como o comportamento desta classe. Considerando a estrutura da Classe Principal demonstrada na figura a seguir, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Já que o método "Aluno()" não possui parâmetros as linhas 7 a 9 geram erros de compilação. ( ) O método chamado main é quem torna uma classe executável, sendo que a sua existência em uma classe é opcional. ( ) A linha 1 define, através da palavra reservada "package", que a classe está agrupada, porém sem obedecer as suas responsabilidades dentro de uma aplicação. ( ) Pode-se afirmar que o tipo de dados do atributo "nome", existente na classe aluno é do tipo caracter. Assinale a alternativa que apresenta a sequência CORRETA: A V - F - F - V. B V - F - V - F. C F - V - F - V. D F - V - F - F. A programação orientada a objetos tem como uma de suas principais características a combinação de estado e comportamento em suas entidades, conhecidas como classes. Com relação ao estado e ao comportamento de objetos na linguagem de programação Java, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Todos os métodos devem retornar um tipo de dado, que pode inclusive ser uma classe. ( ) A palavra reservada void indica que um método não possui retorno. ( ) Na declaração “Aluno retornarMelhorAluno()”, o método retornará um dado do tipo String. ( ) O número máximo de parâmetros de um método é igual ao número de atributos da classe em que este método estiver. Agora, assinale a alternativa que apresenta a sequência CORRETA: A V - V - V - F. 3 4 04/04/22, 14:29 Avaliação Final (Objetiva) - Individual 3/5 B F - V - F - F. C V - F - F - V. D V - F - F - F. 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 B Todas estão corretas! C D 5 04/04/22, 14:29 Avaliação Final (Objetiva) - Individual 4/5 Quando dois objetos são referenciados por variáveis diferentes, a igualdade entre estes objetos pode ser definida através da sobrescrição do método equals(), em que é determinado qual ou quais atributos devem representar esta igualdade. Considerando o mecanismo de referenciação da Java Virtual Machine e o código fonte a seguir, assinale a alternativa CORRETA: A O console imprimirá iguais. B Ocorre um erro de compilação. C Ocorre um erro na execução. D O console imprimirá diferentes. As coleções (ou collections) são estruturas que permitem o armazenamento através de associação e posterior recuperação de conjuntos de objetos ou mesmo objetos individualmente. Considerando-se uma coleção que aceita duplicatas, em que a ordem dos objetos é a mesma da inserção e que pode ser iterada através de um índice, assinale a alternativa CORRETA que apresenta o nome desta coleção: A ArrayList. B HashSet. C HashMap. D Vector. A linguagem de programação Java obedece ao conceito de tipagem forte, em que todas as variáveis declaradas em uma classe ou interface devem ter seu tipo definido no momento da declaração. Com relação à tipagem e à definição das variáveis na linguagem Java, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Não existe limitação para o número de atributos dentro de uma classe na linguagem de programação Java. ( ) O valor assumido pelos atributos de um objeto representam o estado interno de um objeto. ( ) Cada instância de uma classe pode possuir valores distintos para seus atributos. ( ) Através da declaração “String nome;” dentro de uma classe, cria-se uma variável cujo valor sempre será compartilhado entre todas as instâncias. Agora, assinale a alternativa que apresenta a sequência CORRETA: A F - V - F - V. B V - F - F - F. 6 7 8 04/04/22, 14:29 Avaliação Final (Objetiva) - Individual 5/5 C V - V - V - F. D V - F - F - V. Da mesma forma que a comparação de igualdade entre objetos, a linguagem de programação Java oferece um mecanismo que permite a definição dos critérios de ordenação para objetos que forem colocados em uma coleção ordenável. Com relação aos métodos de ordenação disponíveis para objetos em coleções, assinale a alternativa CORRETA: A A Interface Comparator deve ser implementada pelos objetos que estiverem sendo ordenados. B O método compareTo(Object, object) da Interface Comparable retorna um object, quando sobrescrito. C O método compare(Object arg1, Object arg2) está disponível na interface Comparator. D A Interface Comparable deve ser implementada por um objeto externo chamado de provider, que procederá com a ordenação de dois objetos de cada vez. 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 idealizadase 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 não apresenta problemas de sintaxe. ( ) O método competirPor(int pais) está gerando erro de sintaxe e usa incorretamente a palavra- chave void. ( ) O método competirPor(int pais) possui um retorno de tipo definido. ( ) O método "competir(String modalidade)" não gera erro de sintaxe e usa a palavra-chave abstract corretamente. Assinale a alternativa que apresenta a sequência CORRETA: A F - F - F - F. B F - F - V - V. C V - F - V - V. D V - V - V - V. 9 10 Imprimir
Compartilhar