Baixe o app para aproveitar ainda mais
Prévia do material em texto
Fazer teste: Semana 6 - Atividade Avaliativa Programação Orientada a Objetos - EEP101 - Turma 001 Atividades Fazer teste: Semana 6 - Atividade Avaliativa PERGUNTA 1 O uso do bloco �nally no tratamento de exceções não é obrigatório, no entanto, é interessante para fechar alguns recursos e retorná-los ao sistema. Marque a alternativa que não corresponde a um recurso para o caso. Conexões com banco de dados. Garbage Collector. Bu�ers de entrada e saída. Conexões de rede. Arquivos. 1 pontos Salvar resposta PERGUNTA 2 A Classe exercExc() possui o método retornaNome(), esse método lança uma exceção quando a lista não puder retornar o nome armazenado na posição definida na variável index. A exceção capturada é genérica (Exception). Qual exceção da hierarquia de classes que poderia ser utilizada no lugar de Exception para que tivéssemos uma exceção específica a este tipo de erro? import java.util.*; public class exercExc { List<String> lista = new ArrayList<String>(); public String retornaNome(int index) throws Exception{ return this.lista.get(index); } public static void main(String[] args) { // TODO Auto-generated method stub exercExc teste = new exercExc(); try { teste.retornaNome(0); }catch(Exception e) { System.out.println("nao ha nome armazenado nesta posição: "+ e.getMessage()); } } } ClassCastException 1 pontos Salvar resposta https://ava.univesp.br/webapps/blackboard/execute/courseMain?course_id=_3653_1 https://ava.univesp.br/webapps/blackboard/content/listContent.jsp?course_id=_3653_1&content_id=_495803_1&mode=reset ArrayIndexOutOfBoundsException RunTimeException ArithmeticException NullPointerException PERGUNTA 3 Compare as implementações A e B abaixo e marque a alternativa incorreta. Implementação A public class testeET { public String analisaTemperatura(int t) { if (t>=37) throw new RuntimeException("Você está com febre"); else return "Você está saudavel"; } public static void main(String args[ ]){ testeET c = new testeET(); try { System.out.println(c.analisaTemperatura(35)); System.exit(1); } catch (RuntimeException e) { System.out.println(e.getMessage()); } finally { System.out.println("Liberação de recursos!!!"); } } } Implementação B public class testeET { public String analisaTemperatura(int t) { if (t>=37) throw new RuntimeException("Você está com febre"); else return "Você está saudavel"; } public static void main(String args[ ]){ testeET c = new testeET(); try { System.out.println(c.analisaTemperatura(38)); System.exit(1); } catch (RuntimeException e) { System.out.println(e.getMessage()); } finally { System.out.println("Liberação de recursos!!!"); } } } A implementação B não executa o �nally devido ao System.exit(1), pois não houve exceção. A implementação B executa o �nally, pois houve exceção e não passou pelo System.exit(1). A saída na implementação A será "Você está saudavel" e a mensagem do �nally não será executada. 1 pontos Salvar resposta A saída na implementação B será ("Você está com febre" e a mensagem do �nally "Liberação de recursos!!!". A implementação A não executa o �nally devido ao System.exit(1), pois não houve exceção. PERGUNTA 4 O exemplo a seguir implementa a Classe testeNE(), que possui o método verificaIdadeVoto(). Esse método faz uso da palavra reservada throw, o que significa que: public class testeNE { public String verificaIdadeVoto(int idade) { if (idade>=0 && idade<16) throw new RuntimeException("Você não está apto a votar"); else return "Você é eleitor!!!"; } public static void main(String args[ ]){ testeNE c = new testeNE(); try { System.out.println(c.verificaIdadeVoto(38)); System.out.println(c.verificaIdadeVoto(15)); } catch (RuntimeException e) { System.out.println(e.getMessage()); } } } o erro será lançado para o método que executou. uma exceção será lançada e tratada posteriormente no programa principal. uma exceção será tratada localmente no método. o erro será lançado para outra classe. uma exceção personalizada será gerada e lançada para o programa principal. 1 pontos Salvar resposta PERGUNTA 5 Sobre o tratamento de exceções, assinale a alternativa que não corresponde a uma de�nição presente no assunto para a linguagem estudada. É possível lançar mais de uma exceção. O bloco try..catch é usado para tratar a exceção. A palavra throw é utilizada para lançar uma exceção. É possível tratar mais de um erro quase ao mesmo tempo. 1 pontos Salvar resposta IOException é uma subclasse de RuntimeException. PERGUNTA 6 Analisando o exemplo a seguir, a classe teste utiliza as instruções try{..}catch(){}, o que significa: public class teste { public static void main(String[] args) { int[] x = {1, 2,3,4,5}; try { x[6]=9; } catch (ArrayIndexOutOfBoundsException e) { System.out.println("vetor de tamanho 5, espaço nao reservado! "+ e.getMessage()); } } } Polimor�smo. Tratamento de Exceções. Interface. Entrada e Saída. Serialização. 1 pontos Salvar resposta PERGUNTA 7 Assinale a alternativa que não apresenta uma vantagem em se realizar o tratamento de exceções. Tolerância a falhas. Reusabilidade. Facilidade de depuração. Robustez do software. Facilidade de manutenção. 1 pontos Salvar resposta PERGUNTA 8 Java permite um mecanismo de tratamento de exceções. Considerando esse mecanismo, dentre as alternativas abaixo, é correto a�rmar que: permite corrigir erros de lógica e sintaxe da linguagem. permite corrigir erros de lógica. 1 pontos Salvar resposta permite gerar código de máquina direcionado ao erro computacional. permite corrigir problemas de sintaxe da linguagem. permite separar o �uxo normal do �uxo excepcional de um programa utilizando construções especiais. PERGUNTA 9 De�na se as sentenças abaixo são verdadeiras (V) ou falsas (F). ( ) As exceções veri�cadas costumam ser causadas por de�ciências no código do seu programa. ( ) As exceções não veri�cadas costumam ser causadas por condições que não estão no controle do programa. ( ) O tipo de exceção determina se é veri�cada ou não veri�cada. ( ) As exceções veri�cadas em Java devem ter como requisito o padrão catch-or-declare. ( ) O Java não veri�ca o código para determinar se uma exceção não veri�cada é capturada ou declarada. A alternativa que representa a sequência correta, respectivamente, é dada por: V – F – V – V – V V – F – V – V – F F – F – V – F – V F – F – V – V – V V – F – F – V – V 1 pontos Salvar resposta PERGUNTA 10 O exemplo a seguir implementa a Classe exercExc(), que possui o método retornaNome(). Esse método faz uso da palavra reservada throws, o que significa que: import java.util.*; public class exercExc { List<String> lista = new ArrayList<String>(); public String retornaNome(int index) throws Exception{ return this.lista.get(index); } public static void main(String[] args) { // TODO Auto-generated method stub exercExc teste = new exercExc(); try { teste.retornaNome(0); }catch(Exception e) { System.out.println("nao ha nome armazenado nesta posição: "+ e.getMessage()); } } } 1 pontos Clique em Salvar e Enviar para salvar e enviar. Clique em Salvar todas as respostas para salvar todas as respostas. uma exceção será obrigatoriamente lançada para outra classe. uma exceção será tratada localmente no método. uma exceção será obrigatoriamente lançada e tratada no método que a executou. uma exceção será obrigatoriamente gerada e lançada para o programa principal. se houver algum erro, o método retornanome() poderá lançar uma exceção.
Compartilhar