Sobes.tech
Intern

Co je to výjimka?

sobes.tech AI

Odpověď od AI

Výjimka je událost, která narušuje normální průběh běhu programu. Vzniká při chybě nebo nepředvídané situaci.

Existují:

  • Řízené (Checked): vyžadují zpracování nebo deklaraci v signatuře metody (například při práci se soubory nebo sítí).
  • Neřízené (Unchecked) nebo Výjimky za běhu (RuntimeException): obvykle naznačují chyby v logice programu a nevyžadují explicitní zpracování (například dělení nulou nebo přístup mimo hranice pole).
  • Chyby (Errors): představují vážné problémy, ze kterých by program obvykle neměl být schopen se zotavit (například nedostatek paměti).

Mechanismus zpracování výjimek umožňuje oddělit kód, který chyby zpracovává, od hlavního logického toku programu. To zvyšuje čitelnost a udržovatelnost kódu.

Pro zpracování výjimek se používají bloky try-catch-finally (v Javě, C#) nebo podobné konstrukce (try-except-finally v Pythonu).

try {
    // Kód, který může vyvolat výjimku
    int result = 10 / 0; // ArithmeticException
} catch (ArithmeticException e) {
    // Zpracování konkrétní výjimky
    System.err.println("Chyba: " + e.getMessage());
} catch (Exception e) {
    // Zpracování jakékoli jiné výjimky
    System.err.println("Nastala neočekávaná chyba");
} finally {
    // Kód, který se vykoná bez ohledu na to, zda došlo k výjimce
    System.out.println("Blok finally byl proveden");
}