Prévia do material em texto
1a Questão A biblioteca Java apresentam diversos tipos de estruturas de coleção, através do framework Collections. Uma destas estruturas funciona da mesma forma que uma tabela, com o relacionamento entre uma chave única e um conjunto de dados. Qual é esta estrutura? Collection ArrayList HashMap Vector List Respondido em 15/09/2019 22:36:17 Explicação: O uso de HashMap viabiliza a construção de coleções de pares chave-valor, onde as chaves não permitem duplicidade. 2a Questão O uso do JCF permite a criação de estruturas bastante complexas, como a apresentada a seguir: ArrayList< HashMap< Integer, ArrayList< String > > > estruturaX; Esta estrutura define uma coleção de elementos HashMap, onde cada elemento do HashMap é definido por uma chave inteira e uma coleção do tipo String. Qual seria o comando para adicionar o texto "XPTO" à coleção de chave 12 do HashMap que ocupa a terceira posição na coleção de HashMaps? estruturaX.get(2,12).add("XPTO"); estruturaX.get(3).put(12,"XPTO"); estruturaX.put(3,12,"XPTO"); estruturaX.get(2).get(12).add("XPTO"); estruturaX.add(2,12,"XPTO"); Respondido em 15/09/2019 22:37:30 Explicação: Para obter o terceiro HashMap é utilizado estruturaX.get(2). Em seguida podemos obter o ArrayList de chave 12 com get(12), e finalmente adicionar o texto. De uma forma menos direta: HashMap<integer,arraylist> alfa = estruturaX.get(2); ArrayList beta = alfa.get(12); beta.add("XPTO");</integer,arraylist 3a Questão Quando se cria um programa de computador em Java, há possibilidade de ocorrerem erros imprevistos durante sua execução. Esses erros são conhecidos como exceções e podem ser provenientes de falhas na lógica ou acesso a dispositivos ou arquivos externos. As exceções, portanto, ocorrem quando algo imprevisto acontece, e elas podem ser provenientes de erros de lógica ou acesso a recursos que talvez não estejam disponíveis. Sobre o tratamento de exceções em Java, assinale a afirmativa INCORRETA. A cláusula catch nem sempre é executada. A cláusula finally é sempre executada, mesmo ocorrendo o fluxo em um bloco try/catch. As exceções em Java são fixas e não é possível definir novas exceções. Uma exceção é sempre um objeto do tipo Throwable. A cláusula try sempre é executada, mas a sequencia completa pode ser interrompida por uma exceção. Respondido em 15/09/2019 22:39:28 Explicação: No Java é possível definir exceções de forma muito simples, bastando derivar da classe Exception ou de suas descendentes. 4a Questão A linguagem Java traz algumas palavras específicas para o tratamento de execeções, definindo o controle de fluxo para estas situações. Qual palavra é utilizada para definir um bloco de execução obrigatória, mesmo que na ocorrência de exceção? throw finally try throws catch Respondido em 15/09/2019 22:40:36 Explicação: O comando try (tentar) serve para definir um bloco protegido, sendo o fluxo de exceção desviado para catch, e finally executado de forma obrigatória. O comando throw lança uma exceção, e o comando throws ecoa para o chamador do método. 5a Questão Acerca das anotações, é correto afirmar: São classes que servem para guardar lembretes durante o processo de programação. São interfaces comuns, que devem ser implementadas pelas classes com o uso de implements. Não permitem a definição de valores default, e qualquer parâmetro definido precisa ser preenchido durante a utilização. É apenas um tipo de comentário que surgiu na versão 5 do Java. São metadados anexados aos elementos de programação que podem ser recuperados através de reflexividade computacional. Respondido em 15/09/2019 22:40:59 Explicação: As anotações são metadados não serializáveis que podem ser anexados aos elementos de programação para o reconhecimento posterior a partir de ferramentas externas. Não se trata de comentários simples, a definição é feita com o uso de @interface e elas aceitam valores default. 6a Questão Com relação à programação com uso de classes genéricas, esta é uma abordagem que: Está presente desde as primeiras versões do Java, onde estas classes eram classificadas como POJO. Permite a definição de comportamentos, como filas e pilhas, os quais serão complementados com a escolha da(s) classe(s) de interesse. Trabalha de forma abstrata, exigindo a utilização da palavra abstract na definição da classe. Trabalha com metadados anexados aos elementos de programação, visando o reconhecimento por ferramentas externas. É aplicável exclusivamente às coleções, não sendo utilizada em nenhum outro ferramental do Java. Respondido em 15/09/2019 22:41:25 Explicação: Viabilizadas a partir da versão 5 do Java, as classes genéricas permitem a modelagem comportamental prevista há muito tempo na UML com o nome de classes template. Embora a biblioteca JCF tenha adotado este paradigma para implementação, é possível criar novas classes genéricas no Java, não estando restrito às coleções.