A J nyelv kivételkezelése a szokásos try-catch szintaxisra épül. Érdekesség, hogy háromféle catch van, ezekre később térünk ki. A kivételkezelés a következőképpen nézhet ki (Bi - programblokk):
A J nyelv számos beépített kivételt tartalmaz, melynek teljes listája ezen az oldalon tekinthető meg. Saját kivétel definiálására tudtommal nincs lehetőség.
Kivétel kiváltására a throw. kulcsszóval van lehetőségünk.
De a throw által kiváltott kivételt, csak a "catcht." részben lehet lekezelni.
Példa:
A J nyelvben a catch blokk maga a kivételkezelő rész. Háromféle catch blokk van melyek tetszőleges sorrendben követhetik egymást. A kivételek kezelését a következő példán keresztül mutatjuk be(Bi - programblokk):
A kivétel a hívási láncon visszafelé terjed, egészen addig, amíg valahol el nem kapják. Ha egy kivételt egy neki megfelelő catch ágban elkapunk, akkor a kivétel terjedése megáll. Ha a kivétel nem talál neki megfelelő catch-t akkor magasabb rendű catch kezeli le (lásd itt a példában).