Výjimky technicky

  • Výjimka (Exception) je objekt třídy java.lang.Exception, příbuzným typem jsou rovněž vážné běhové chyby - ty jsou objekty třídy java.lang.Error.

  • Objekty -výjimky- jsou vytvářeny (vyvolávány) buďto

    • automaticky běhovým systémem Javy, nastane-li nějaká běhová chyba, např. dělení nulou, nebo

    • jsou vytvořeny samotným programem, zdetekuje-li nějaký chybový stav, na nějž je třeba reagovat - např. do metody je předán špatný argument

  • Vzniklý objekt výjimky je předán buďto:

    1. v rámci metody, kde výjimka vznikla - do bloku catch -> výjimka je v bloku catch tzv. zachycena

    2. výjimka "propadne" do nadřazené (volající) metody, kde je buďto v bloku catch zachycena nebo opět propadne atd.

  • Výjimka tedy "putuje programem" tak dlouho, než je zachycena. Pokud není, běh JVM skončí s hlášením o výjimce.