DEV Community

Java para Iniciantes (Oracle)
Java para Iniciantes (Oracle)

Posted on

Três recursos das exceções adicionados recentemente

  • A partir do JDK 7, o tratamento de exceções foi expandido com três novos recursos: gestão automática de recursos, multi-catch e relançamento mais preciso.

  • Multi-catch permite capturar várias exceções com a mesma cláusula catch, evitando duplicação de código.

  • Para usar o multi-catch, especifique uma lista de exceções separadas por | na cláusula catch. Cada parâmetro é implicitamente final.

  • Exemplo de uso: catch(final ArithmeticException | ArrayIndexOutOfBoundsException e) para capturar ambas as exceções com a mesma cláusula catch.

Image description

  • O programa gera uma ArithmeticException ao tentar dividir por zero e uma ArrayIndexOutOfBoundsException ao acessar um índice fora dos limites do array. Ambas as exceções são capturadas pela mesma cláusula catch.

  • O recurso de relançamento mais preciso restringe o tipo de exceção que pode ser relançado para:

  • 1 Exceções verificadas lançadas pelo bloco try.

  • 2 Exceções não tratadas por uma cláusula catch anterior.

  • 3 Exceções que sejam subtipo ou supertipo do parâmetro.

  • O parâmetro no bloco catch deve ser final para usar o relançamento final, o que significa que ele não pode receber um novo valor dentro do bloco catch. Isso pode ser declarado explicitamente, mas não é obrigatório.

Top comments (0)

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay