Lorsqu’une exception est levée,
que se passe-t-il ?
- La Java machine stoppe l'exécution normale du programme à la recherche d'un gestionnaire d'exception susceptible d'intercepter et traiter cette exception. Cette recherche s'effectue à partir du bloc englobant et se poursuit sur les blocs plus englobants si aucun gestionnaire de cette exception n'a été trouvé.
- La JVM termine l’exécution du programme et rend la main au système.
- Si le code qui a causé l’exception n’est pas dans un bloc try/catch l’exécution du programme s’arrête.
- Si une exception hérite de la class java.lang.Error, le programme s’arrête, même si l’exception est gérée.
OutOfMemoryError
- Hérite de la classe Error
- Hérite de RuntimeException
- Est une exception non contrôlée
- Est une exception contrôlée (checked) qui hérite de RuntimeException
-------------------------------------------------------------------
1- Exception ← Throwable ← Error
^--- ← Runtime
Error hérite de Throwable qui hérite d’Exception. Runtime hérite aussi d’Exception.
2- Throwable ← Error ← Exception
^--- ← Runtime
Exception hérite d’Error qui hérite de Throwable. Runtime hérite de Throwable.
3- Throwable ← Exception ← Runtime
^-- ← Error
Runtime hérite d’Exception qui hérite de Throwable. Error hérite aussi de Throwable
4- Error ← Throwable ← Exception
^-- ← Runtime
Exception hérite de Throwable qui hérite d’Error. Runtime hérite d’Error.
-------------------------------------------------------------------
Aucun commentaire:
Enregistrer un commentaire