Um analista foi solicitado para verificar o código a seguir e emitir uma opinião sobre ele. Assinale a alternativa correta. public class A { public void f(int a){ if (a < 10) throw new NumberFormatException(); System.out.println("a = "+ a); } } import java.io.IOException; public class B{ public void f(int a) throws IOException { if (a < 10) throw new IOException ("valor do argumento de f() é " + a + " (menor que 10)"); System.out.println("a = "+ a); } } import java.io.IOException; public class TestaException{ public static void main(String[] args) throws IOException{ B x = new B(); int a = 4; x.f(a); System.out.println("fim do metodo main em TestaException"); } } O código da classe TestaExcecao não vai executar. Considerando a classe TestaException, a exceção que pode ser lançada por f() é verificada (IOException), e o método main() tem a cláusula "throws IOException", o que faz a compilação ocorrer corretamente. O código da classe TestaExcecao não compila corretamente, pois não tem try/catch. A exceção que pode ser lançada por f() é não verificada, na Classe B. A exceção que pode ser lançada por f() é verificada, na Classe A.
Soluções para a tarefa
Respondido por
0
Resposta:
Considerando a classe TestaException, a exceção que pode
ser lançada por f() é verificada (IOException), e o
método main() tem a cláusula "throws IOException" , o que faz a compilação ocorrer corretamente.
Explicação:
Perguntas interessantes
Geografia,
4 meses atrás
História,
4 meses atrás
História,
4 meses atrás
Inglês,
5 meses atrás
Matemática,
10 meses atrás
Contabilidade,
10 meses atrás