★ À maîtriser
📌 La classe java.lang.Exception représente les exceptions ou erreurs non bloquantes, tandis que java.lang.Error représente les erreurs bloquantes.
Compléments
Erreur inattendue → remontée vers un contexte capable de la traiter
★ À maîtriser
📌 Les clauses catch doivent être ordonnées de l’exception la plus spécialisée à la plus générale, et un seul gestionnaire est exécuté pour une exception donnée.
📌 Le bloc finally est exécuté qu’une exception soit lancée ou non, puis l’exécution normale reprend après le bloc try-catch-finally.
Compléments
📌 Si aucun gestionnaire ne valide le type de l’exception lancée, l’exécution de la méthode est arrêtée et l’exception remonte vers le contexte englobant.
try → catch spécialisé → finally → suite normale
★ À maîtriser
📌 Le mot-clé throws, suivi d’une liste d’exceptions potentielles, déclare dans la signature d’une méthode les exceptions qu’elle peut lancer.
Compléments
📌 La vérification à la compilation oblige le programmeur à prévoir la gestion des exceptions que les méthodes peuvent lancer.
throw lance l’exception, throws l’annonce dans la méthode
★ À maîtriser
Compléments
Les méthodes File citées sont:
Dans l’exemple DirList, File path = new File(".") représente le répertoire courant et listFiles() fournit les fichiers et répertoires à parcourir.
Un objet File tient le chemin abstrait d’un fichier et inspecte ses propriétés
📌 Les flux d’entrée servent à lire des données, tandis que les flux de sortie servent à écrire des données.
★ À maîtriser
Pour sérialiser un objet, il faut envelopper un OutputStream dans un ObjectOutputStream, appeler writeObject avec l’objet à sérialiser, puis fermer le flux ; l’extension habituelle du fichier est .ser.
Pour désérialiser, ObjectInputStream lit les données avec readInt ou readObject, puis les convertit vers le type attendu avant de fermer le flux.
📌 Une classe rend ses objets sérialisables en implémentant l’interface Serializable, qui ne contient aucune méthode et fonctionne comme un simple indicateur.
Compléments
Lors de la sérialisation, les liens vers d’autres objets et ces objets eux-mêmes sont enregistrés ou restaurés, tandis que les objets non sérialisables ne sont jamais enregistrés.
ObjectOutputStream et ObjectInputStream fournissent aussi des méthodes pour écrire et lire des données primitives, comme DataOutputStream et DataInputStream.
OutputStream → ObjectOutputStream → writeObject → fichier .ser
Mots-clés de gestion des exceptions
| Élément | Rôle | Condition d’exécution |
|---|---|---|
| throw | Lance un objet exception | Lorsqu’une instruction déclenche l’erreur |
| throws | Déclare les exceptions potentielles d’une méthode | Dans la signature de la méthode |
| try | Surveille une région de code | Toujours exécuté pour le code surveillé |
| catch | Attrape et traite une exception | Si le type lancé correspond |
| finally | Exécute le code final | Qu’il y ait une exception ou non |
Teste tes connaissances sur Exceptions et entrées-sorties en Java avec 17 questions à choix multiples et corrections détaillées.
1. Quel mécanisme Java traite formellement une erreur inattendue que le code ne peut pas récupérer dans le contexte actuel ?
2. Lorsqu’une exception est rencontrée et ne peut pas être traitée immédiatement, que devient le chemin d’exécution courant ?
Mémorisez les concepts clés de Exceptions et entrées-sorties en Java avec 38 flashcards interactives.
Qu'est-ce que la gestion d'exceptions en Java ?
Un mécanisme formel qui traite les erreurs inattendues ou inacceptables.
Que se passe-t-il quand une exception est rencontrée en Java ?
Le code arrête son exécution et remonte l'exception au contexte supérieur.
Que représente la classe java.lang.Exception ?
Les exceptions ou erreurs non bloquantes.
Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.
Générateur de fiches