SóProvas


ID
1459873
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2012
Provas
Disciplina
Programação
Assuntos

Considere a classe em Java apresentada a seguir.

public class Questao {
         public static void main(String [ ] args) {
                  try {
                            op (0) ;
                   } catch (IllegalArgumentException e) {
                            System.out.print ("X") ;
                   } catch (Exception e) {
                            System.out.print ("Y") ;
                   } finally {
                            System.out.print ("Z") ;
                  }
}

                  private static void op(int v) throws IllegalArgumentException {
                           if (v == 0)
                                  throw new IllegalArgumentException ("U") ;
                   }
}

Como resultado da execução desse programa, é impressa a cadeia de caracteres

Alternativas
Comentários
  • Ao chamar o método op passando o valor 0 (zero) como parâmetro o método verifica se o valor passado é zero (que nesse caso é verdadeiro) e lança uma exceção do tipo IllegalArgumentException  no qual é capturada dentro do bloco cach que trata essa exceção (catch (IllegalArgumentException e) ) dentro desse bloco cach é impresso o valor X e logo após é executado o bloco finally que imprime o valor Z.

    OBS: o bloco finally sempre é executado independente se ocorreu um erro ou não. Esse bloco é muito utilizado em blocos de código que necessitam fechar algum recurso como por exemplo uma conexão com o banco de dados, no qual independente de ocorrer um erro ou não faz-se necessário fechar a conexão com o banco de dados.

    Alternativa: E

  • então essa parte do código não vai causar nenhum tipo de efeito?

    throw new IllegalArgumentException ("U") ;