Baixe o app para aproveitar ainda mais
Prévia do material em texto
27/04/22, 10:02 Avaliação Final (Objetiva) - Individual 1/6 Prova Impressa GABARITO | Avaliação Final (Objetiva) - Individual (Cod.:746064) Peso da Avaliação 3,00 Prova 43889430 Qtd. de Questões 10 Acertos/Erros 8/2 Nota 8,00 A programação orientada a objetos acarreta um software com maior facilidade de manutenção e menor esforço para isto. Isso porque o paradigma de orientação a objetos permite a reutilização de código-fonte, uma das vantagens oferecidas, permitindo que uma funcionalidade seja alterada em um único ponto do sistema. Outra facilidade da programação orientada a objetos, mais especificamente na linguagem Java, é a coleção, uma espécie de vetor dinâmico. Com relação à coleção, assinale a alternativa CORRETA: A O arraylist é um tipo de coleção da linguagem Java. B O arraylist é uma coleção da linguagem Java que não armazena lista de objetos, mas, sim, uma lista de dados primitivos, como real ou caracter. C Uma coleção, na linguagem Java, armazena apenas lista de valores de tipos numéricos. D Uma coleção, na linguagem Java, armazena apenas lista de valores do tipo String. 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: 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); } } I- A classe em questão apresenta problemas de sintaxe. II- O método competirPor(int pais) não está gerando erro de sintaxe e usa corretamente a palavra-chave void. III- O método competirPor(int pais) gera erros de sintaxe, e necessita da palavra-chave abstract antes da palavra-chave void. IV- O método "competir(String modalidade)" não gera erro de sintaxe. Assinale a alternativa CORRETA: A As sentenças I e III estão corretas. B As sentenças II e IV estão corretas. C As sentenças III e IV estão corretas. D As sentenças I e II estão corretas. VOLTAR A+ Alterar modo de visualização 1 2 27/04/22, 10:02 Avaliação Final (Objetiva) - Individual 2/6 A Orientação a Objetos (OO), nascida mais ou menos na década de 1990, surgiu com uma proposta de resolver alguns problemas crônicos dos paradigmas de desenvolvimento de programas e softwares existentes na época, como a reutilização e a manutenibilidade desses programas e softwares. Hoje, depois de quase 30 anos, o paradigma OO está consolidado na indústria de software e é utilizado também em outras abordagens de desenvolvimento como a Orientação a Serviços. Dessa forma, sobre as vantagens oferecidas por programas criados usando o paradigma da orientação a objetos (OO), classifique V para as sentenças verdadeiras e F para as falsas: ( ) A utilização desse paradigma na criação de programas é favorável à utilização de períodos de tempo pré-definidos para cada ciclo de desenvolvimento, já que cada um desses ciclos pode agregar um conjunto de objetos, representando um módulo ou parte de um módulo (do programa, ou software), que precisam ser desenvolvidos. ( ) O ciclo de um programa continua com a sua entrega ao cliente, dando início a etapa de suas manutenções. Nesse quesito, a OO falha, pois os seus conceitos, recursos e características, não estão preparados para lidar com essa referida etapa. ( ) Os programas usando esse paradigma têm uma reutilização (partes genéricas que podem ser combinadas) limitada dificultando sua combinação para a execução de tarefas em diferentes programas e softwares. ( ) Programas escritos utilizando esse paradigma tendem a ser mais confiáveis que os escritos em outros paradigmas devido à necessidade de controle que deve ser atribuída ao projeto modular de objetos que podem ser compartilhados entre diferentes programas ou softwares. Assinale a alternativa que apresenta a sequência CORRETA: A F - F - V - V. B V - F - V - F. C V - F - F - V. D V - V - V - F. 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 booleano. Assinale a alternativa que apresenta a sequência CORRETA: A F - V - F - F. B V - F - V - F. C V - F - F - V. 3 4 27/04/22, 10:02 Avaliação Final (Objetiva) - Individual 3/6 D F - V - V - V Todas as classes em Java herdam implicitamente a classe Object e, dessa forma, herdam também métodos. Dentre os métodos herdados podemos destacar o "equals()" e o "hashCode()", ambos utilizados pelo Framework de coleções da linguagem de programação Java. Acerca desses dois métodos, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O operador "==" é uma maneira simplificada de se chamar o método "equals()". ( ) Ao escrevermos uma classe, devemos utilizar a anotação @Replace para sobrescrever os métodos "equals()" e "hashCode()". ( ) Coleções que utilizam tabelas de dispersão (também conhecidas por tabelas hash) para armazenamento fazem uso direto do método "hashCode()". ( ) O método "equals()" é utilizado pelas coleções que não permitem repetições para determinar a igualdade entre objetos. Agora, assinale a alternativa que apresenta a sequência CORRETA: A F - F - F - V. B F - V - V - F. C V - V - V - F. D F - F - V - V. O desenvolvimento de programas utilizando a linguagem de programação Java é facilitado, e otimizado, pelo uso das chamadas IDE (Integrated Development Environment) que são ambientes sofisticados para o desenvolvimento de programas e softwares. Entre elas, podem-se citar os ambientes de desenvolvimento Eclipse e Netbeans. Sobre a ferramenta Console, parte integrante dos recursos que a IDE Eclipse apresenta, assinale a alternativa CORRETA: A Possui uma característica similar a um navegador de arquivos, presente nos sistemas operacionais, como o Windows Explorer, direcionada à apresentação da estrutura e métodos de uma classe de maneira ordenada. B Sua funcionalidade está ligada à característica de permitir alguma manipulação dos dados de entrada com a visualização de seus resultados para programas criados no Eclipse. C Sua funcionalidade advém do fato de permitir a edição dos códigos dos programas desenvolvidos na linguagem Java, permitindo, dessa forma, destacar palavras reservadas, apresentar as características de um objeto, compilação automática etc. D A aplicabilidade dessa ferramenta está no fato de permitir que o desenvolvedor visualize na forma de uma estrutura ordenada todos os objetos (classes, pacotes, projetos e bibliotecas) presentes em um Workspace. Java é uma linguagem de programação interpretada orientada a objetos desenvolvida na década de 90 por uma equipe de programadores. Observe a figura anexa que ilustra uma situação típica em que podemos aplicar o conceito de herança de classes em Java. Considerando os conceitos de programação orientada a objetos, analise as sentenças a seguir: I- A classe FormaGeometrica, indicada pela letra A, é 5 6 7 27/04/22, 10:02 Avaliação Final (Objetiva) - Individual 4/6 considerada a subclasse das classes contidas na área indicada pela letra B. II- Quadrado é uma classe filhada classe FormaGeometrica. III- A classe Triangulo tem como superclasse a classe FormaGeometrica. Agora, assinale a alternativa CORRETA: A As sentenças I e III estão corretas. B Somente a sentença I está correta. C As sentenças II e III estão corretas. D As sentenças I e II estão corretas. O framework Collections da plataforma Java possui um conjunto de interfaces e implementações que permitem, entre outras funcionalidades, determinar a ordenação de um grupo de objetos com base em suas características. Acerca da ordenação de objetos, analise as afirmativas a seguir: I- Para ordenar objetos de uma mesma classe, deve-se garantir que tal classe implemente a interface Comparable ou utilize um provider. II- A implementação do método "compareTo" varia conforme o contexto/critério em que a ordenação é aplicada. III- No Java, só é possível ordenar classes Wrappers. IV- Para ordenarmos uma coleção de objetos, podemos utilizar método estático "sort" da classe "ArrayList" Agora, assinale a alternativa CORRETA: A Somente a sentença IV está correta. B As sentenças I e II estão corretas. 8 27/04/22, 10:02 Avaliação Final (Objetiva) - Individual 5/6 C As sentenças I, II e IV estão corretas. D Somente a sentença III está correta. Em combinação com a definição de pacotes e classes, os modificadores de visibilidade constituem- se de uma ferramenta poderosa na definição da segurança e encapsulamento da aplicação. Com relação à utilização de modificadores de visibilidade na linguagem de programação Java, analise as sentenças a seguir: I- Um método com modificador default contido em uma classe pública não pode ser acessado em uma classe disponível em outro pacote. II- Um método com modificador public contido em uma classe pública somente pode ser acessado por uma classe disponível em outro pacote através do comando import. III- Uma classe com modificador default pode ser acessada por uma classe de outro pacote com o comando import. IV- Um método private colocado em uma classe com o modificador default não pode ser acessado por outra classe dento do mesmo pacote. Agora, assinale a alternativa CORRETA: A Somente a sentença II está correta. B As sentenças II e III estão corretas. C Somente a sentença IV está correta. D As sentenças I, II e IV estão corretas. 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 - V - F - F. B F V V F 9 10 27/04/22, 10:02 Avaliação Final (Objetiva) - Individual 6/6 B F - V - V - F. C V - F - F - V. D F - F - V - V. Imprimir
Compartilhar