Considere o código Java a seguir: import java.util.Scanner; public class ExemploRuntimeException { public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.print("Entre com um número inteiro: "); int numero = s.nextInt(); System.out.println("Número lido: " + numero); } } Em que posição do código devemos tratar a exceção com o bloco try/catch? Antes de public static void main(String[] args) { Usar o try antes de Scanner s = new Scanner(System.in); e o catch depois de System.out.println("Número lido: " + numero) Antes de public class ExemploRuntimeException { Depois de System.out.println("Número lido: " + numero) Depois de int numero = s.nextInt()
Usar o try antes de Scanner s = new Scanner(System.in); e o catch depois de System.out.println("Número lido: " + numero)
Explicação:
O que estiver dentro do try o java vai tentar executar.
Caso ocorra uma exceção o catch vai capturar.
Tendo isso em vista o código que queremos executar deve estar dentro do bloco Try.
6 votes Thanks 11
andressarasp
ESSA QUESTÃO DEVE SER ANULADA POIS A FORMA CORRETA DE TRATAR É: public class ExemploRuntimeException {
public static void main(String[] args) { Scanner s = new Scanner(System.in);
System.out.print("Entre com um número inteiro: ");
try { int numero = s.nextInt(); System.out.println("Número lido: " + numero); } catch (Exception e) { System.err.println("Erro ao ler o número. Certifique-se de fornecer um valor inteiro."); } } }
andressarasp
ENTÃO: Depois de int numero = s.nextInt() SERIA A MENOS ERRADA NA QUESTÃO
andressarasp
PORÉM TB NÃO HÁ PROBLEMA DE COLOCAR O try ANTES ... FICOU UM POUCO MAL REDIGDA A QUESTÃO
Fernando11000
A questão não está errada entre todas as alternativas essa é a correta. Se houvesse duas alternativas incluindo a sua e perguntasse qual seria o mais indicado é uma coisa. Dentre as alternativas não se pode dizer que a resposta está errada.
Lista de comentários
Resposta:
Usar o try antes de Scanner s = new Scanner(System.in); e o catch depois de System.out.println("Número lido: " + numero)
Explicação:
O que estiver dentro do try o java vai tentar executar.
Caso ocorra uma exceção o catch vai capturar.
Tendo isso em vista o código que queremos executar deve estar dentro do bloco Try.
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("Entre com um número inteiro: ");
try {
int numero = s.nextInt();
System.out.println("Número lido: " + numero);
} catch (Exception e) {
System.err.println("Erro ao ler o número. Certifique-se de fornecer um valor inteiro.");
}
}
}
Resposta: b. Usar o try antes de Scanner s = new Scanner(System.in); e o catch depois de System.out.println("Número lido: " + numero)
Explicação: Corrigido AVA.