Try Catch Java

Bom dia pessoal só para sanar uma dúvida…
tenho o seguinte código

  try {
      Cedente cedente = new Cedente(nomeCedente, cpnp);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "CPF/CNPJ Inválido");
            return;
        } 

consigo utilizar a varável cedente fora do try ?

Consegue não. O escopo da variável fica reduzido dentro de blocos assim (msm coisa para IF, FOR, WHILE, etc.)

1 curtida

Não consegue porque, como já dito acima, o escopo da variável é o bloco no qual ela foi criada. Como o try delimita um novo bloco, qualquer variável criada lá dentro não é visível fora dele.

Então ou você faz tudo que precisa dentro do try, ou declare a variável fora dele:

Cedente cedente = null;
try {
    cedente = new Cedente(nomeCedente, cpnp);
} catch (Exception e) {
    JOptionPane.showMessageDialog(null, "CPF/CNPJ Inválido");
    return;
}

// usar "cedente" aqui 

No caso, como tem um return no catch, então se der qualquer erro ao criar o Cedente, o método já retorna. Se der certo e nenhuma exceção for lançada, quer dizer que o cedente foi criado corretamente, e você pode usá-lo depois do try.

1 curtida

Obrigado!! era isso mesmo, tenham um ótimo dia =D