Sobes.tech
Junior

Comment fonctionne la construction try-catch en Java?

sobes.tech IA

Réponse de l'IA

La construction try-catch est utilisée pour gérer les exceptions, qui sont des événements interrompant le flux normal d'exécution du programme.

  • try : Bloc de code où une exception peut potentiellement se produire. Si une exception se produit dans le bloc try, l'exécution de ce bloc est interrompue.
  • catch : Bloc de code qui s'exécute si une exception d'un type spécifique (indiqué entre parenthèses après catch) se produit dans le bloc try correspondant. Java recherche un bloc catch approprié pour gérer l'exception. Si trouvé, le code dans ce bloc s'exécute.
  • finally (optionnel) : Bloc de code qui s'exécute toujours après les blocs try-catch, indépendamment de si une exception s'est produite ou non, ou si elle a été attrapée. Utilisé pour nettoyer les ressources (fermer des fichiers, des connexions, etc.).
public class ExceptionHandlingExample {

    public static void main(String[] args) {
        try {
            // Code pouvant lancer une exception
            int result = 10 / 0; // ArithmeticException
            System.out.println("Cette ligne ne sera pas exécutée si une exception se produit.");
        } catch (ArithmeticException e) {
            // Gestion du type d'exception spécifique
            System.err.println("Une erreur arithmétique est survenue : " + e.getMessage());
        } catch (Exception e) {
            // Capture générique pour tout autre type d'exception
            System.err.println("Une erreur inconnue est survenue : " + e.getMessage());
        } finally {
            // Code qui s'exécute toujours
            System.out.println("Bloc finally exécuté.");
        }

        System.out.println("Le programme continue après try-catch.");
    }
}

Comparaison entre try-catch et throws :

Caractéristique try-catch throws
Objectif Gérer une exception Déléguer la responsabilité
Emplacement Bloc de code Signature de la méthode
Action Intercepter et traiter l'exception Indique la possibilité de lancer