0
respostas

[Sugestão] Diferenciar tipos de exceções, as checked e as unchecked (checadas e não-checadas)

Quando estava estudando, tive uma leve dúvida quanto a diferenciação das duas, se caso você assim como eu, teve essa dificuldade segue uma explicação mais simples:

Imagine que você está dirigindo um carro em uma estrada.

Exceções Checked são como placas de aviso obrigatórias na estrada, como "Ponte Interditada" ou "Radar de Velocidade". Você é obrigado a tomar uma ação antes de seguir em frente, seja reduzindo a velocidade ou pegando um desvio. O código não pode ser compilado sem um tratamento adequado para essas exceções.

Exceções Unchecked são como buracos inesperados na pista ou um pneu furado. Você não é obrigado a se preparar para isso, mas se acontecer e você não tiver um plano (como um estepe no carro), sua viagem pode ser interrompida abruptamente. No código, isso significa que o programa pode falhar inesperadamente se não houver um tratamento adequado.

Se uma exceção checked não for tratada corretamente, o programa nem compila. O compilador do Java exige que você faça algo a respeito dela, seja tratando com try-catch ou declarando que o método pode lançá-la com throws.