---
description: >-
  Checked exceptions are enforced by the project compiler, and they usually
  represent exceptional conditions that a user can reasonably anticipate and
  recover from during the execution of a flow.
---

# Checked Exceptions

A checked exception is any structure that has [pdk.ex.Exception](../../../structures/pdk.ex#exception) as a [superstructure](../../../structures#inheritance).

<figure><img src="https://3477030876-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYK40zKr4ZyVfqCRAUI9t%2Fuploads%2FS8RK3wxXe4FjTzWOB9Tg%2Fimage.png?alt=media&#x26;token=aa6782a6-ea00-445d-9d77-365a4180af40" alt=""><figcaption><p>new exception</p></figcaption></figure>

Checked exceptions can be raised and handled.

<figure><img src="https://3477030876-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYK40zKr4ZyVfqCRAUI9t%2Fuploads%2Fac3LFsjYzVXqCoRbAxU0%2Fexception-flow.png?alt=media&#x26;token=589918ed-6329-4b0b-848a-1762617865ce" alt=""><figcaption></figcaption></figure>
