Mini-Teste: Desmistificando a Certificação SCJP6 Parte IX - Parte 4
Mini-teste
Mini-teste
-
Com o seguinte código:
try{ int a[]= new int[2]; a[3]=18; }
- IndexOutOfBoundsException
- Throwable
- Exception
- ClassCastException
- NullPointerException
- NumbertFormatException
- IOException
- IllegalArgumentException
-
Dado:
static{ int y[] = new int[1]; y[2] =7; }
- ExceptionInInitialiazerError
- ClassCastException
- IndexOutOfBoundsException
- Throwable
- Exception
- NumberFormatException
- Error
- IllegalArgumentException
-
Analise o seguinte código:
public class Main{ public static void main(String args[]){ Object a = new Integer(2); System.out.println((String)a); } }
- Nenhuma
- IndexOutOfBoundsException
- Throwable
- Exception
- ClassCastException
-
Observe o código abaixo:
try{int y = Integer.parseInt(“texto”);}
- IllegalFormatException
- IndexOutOfBoundsException
- Throwable
- Exception
- NullPointerException
- NumberFormatException
- IOException
- ClassCastException
-
Dado:
package devmedia; class Dad{ int getInt(String x) throws Exception{return 22;} } class Son extends Dad{ public static void main(String args[]){ Dad d = new Son(); System.out.println(d.getInt(“55”)); } int getInt(String arg){ return Integer.parseInt(arg); } }
- Declarar que main() lança uma Exception.
- Declarar que getInt() de Son lança uma Exception.
- Encapsular a chamada de getInt() em um bloco try/catch.
- A e B são obrigatórias.
- B e C são obrigatórias.
- Todas as 3 modificações são obrigatórias
- A sozinha é suficiente.
- B sozinha é suficiente.
- C sozinha é suficiente.
-
Quais opções são verdadeiras?
- Não é apropriado usar assertivas para validar argumentos de linha de comando.
- É apropriado capturar e manipular erros de assertivas.
- É apropriado usar assertivas para validar argumentos de linha de comando.
- Não é apropriado usar assertivas que modifiquem o estado de um programa.
- É apropriado usar assertivas para validar argumentos para métodos com modificador public.
GABARITO COMENTADO
-
Resposta A, B e C
A exceção que será lançada no bloco try é uma instância de ArrayIndexOutOfBoundsException, portanto qualquer exceção que esteja acima dessa classe, na hierarquia, está correta.
-
Resposta A, D e G
Devido a exceção ser criada dentro de um bloco estático, trata-se de uma ExceptionInInitializerError. Desse modo, qualquer classe que esteja acima, na hierarquia de classes, poderia capturá-la em um bloco catch.
-
Resposta E
É impossível, em tempo de execução, converter a referência polimórfica a em uma String. Sendo assim, o programa compila, porém uma ClassCastException é lançada.
-
Resposta A, C, D e F
A exceção lançada será uma NumberFormatException. Veja a hierarquia:
Object -> Throwable -> Exception -> RuntimeException -> IllegalArgumentException -> NumberFormatExceptionOutro fato importante a ser notado é que se trata de uma exceção não-verificada. Desse modo, ela não precisaria ser tratada.
-
Resposta D, E e F
A alternativa D consiste em lançar a exceção em vez de tratá-la. A alternativa F consiste em tratar a exceção. Todas são corretas e resolvem o problema sozinhas.
-
Resposta A e D
Não é adequado utilizar assertivas para validar argumentos de linha de comando. É apropriado usar assertivas para gerar alertas quando você alcança um código que não deveria ser alcançado. Não é apropriado utilizar assertivas que alterem o estado de um programa. É apropriado usar assertivas para validar argumentos para métodos com modificador private. Não é apropriado capturar e manipular erros de assertivas.
Estamos próximos ao fim de nossa série, só falta mais duas partes e estaremos prontos para realizarmos nossa prova de certificação.
Até a próxima!
Leia todos artigos da série
- Desmistificando a Certificação SCJP6 - Parte I
- Desmistificando a Certificação SCJP6 - Parte II
- Desmistificando a Certificação SCJP6 - Parte III
- Desmistificando a Certificação SCJP6 - Parte IV - Parte 1
- Desmistificando a Certificação SCJP6 - Parte IV - Parte 2
- Desmistificando a Certificação SCJP6 - Parte V - Parte 1/3
- Desmistificando a Certificação SCJP6 - Parte V - Parte 2/3
- Desmistificando a Certificação SCJP6 - Parte V - Parte 3/3
- Desmistificando a Certificação SCJP6 - Parte VI - Parte 1/3
- Desmistificando a Certificação SCJP6 - Parte VI - Parte 2/3
- Desmistificando a Certificação SCJP6 - Parte VI - Parte 3/3
- Desmistificando a Certificação SCJP6 - Parte VII - Parte 1/3
- Desmistificando a Certificação SCJP6 - Parte VII - Parte 2/3
- Desmistificando a Certificação SCJP6 - Parte VII - Parte 3/3
- Operadores apropriados - Desmistificando a Certificação SCJP6 - Parte VIII - Parte 1
- Instruções if e switch - Desmistificando a Certificação SCJP6 - Parte VIII - Parte 2
- Iteradores e loops - Desmistificando a Certificação SCJP6 - Parte VIII - Parte 3
- Mini-Teste: Desmistificando a Certificação SCJP6 - Parte VIII - Parte 4 - A
- Mini-Teste: Desmistificando a Certificação SCJP6 - Parte VIII - Parte 4 - B
- Tratamento de Exceções em Java: Desmistificando a Certificação SCJP6 - Parte IX - Parte 1
- Definindo Exceções em Java: Desmistificando a Certificação SCJP6 - Parte IX - Parte 2
- Assertivas Java: Desmistificando a Certificação SCJP6 - Parte IX - Parte 3
- String: Desmistificando a Certificação SCJP6 - Parte X - Parte 1
- StringBuilder/StringBuffer e File: Desmistificando a Certificação SCJP6 - Parte X - Parte 2
- Combinação de Classes E/S: Desmistificando a Certificação SCJP6 - Parte X - Parte 3
- Utilizando Arquivos e Diretórios: Desmistificando a Certificação SCJP6 - Parte X - Parte 4
- Console e Serialização: Desmistificando a Certificação SCJP6 - Parte X - Parte 5
- Mini-teste: Desmistificando a Certificação SCJP6 - Parte X - Parte 6 A
- Mini-teste: Desmistificando a Certificação SCJP6 - Parte X - Parte 6 B
- Expressões Regulares: Desmistificando a Certificação SCJP6 Parte XI - Parte 1
- Lista Negada e Metacaracteres: Desmistificando a Certificação SCJP6 Parte XI - Parte 2
- Metacaracteres Âncora e Busca: Desmistificando a Certificação SCJP6 Parte XI - Parte 3
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Vídeo