LearnThatStack Ace your next interview
Java · question
Question 11 of 95

What is the exception hierarchy in Java?

beginner
← All Java questions
Re-explain

Every exception in Java descends from Throwable, which splits into two branches, Error and Exception.

  • Error covers serious problems such as OutOfMemoryError and StackOverflowError. A normal application should not try to catch these.
  • Exception covers conditions an application may want to handle. Its subclass RuntimeException and everything below it are unchecked.

Every other subclass of Exception, such as IOException and SQLException, is checked. Error and its subclasses are unchecked too. The "Checked Exceptions" node in the tree is a grouping, not a real class. A catch (Exception e) block never catches an Error.

Throwable
├── Error (unchecked)
│   ├── OutOfMemoryError
│   └── StackOverflowError
└── Exception
    ├── Checked Exceptions
    │   ├── IOException
    │   └── SQLException
    └── RuntimeException (unchecked)
        ├── NullPointerException
        └── ArrayIndexOutOfBoundsException
Rewriting in plainer words…

This answer doesn't lend itself to a diagram - it reads best . No credits were charged.

Why there's no diagram: “”

The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓

The diagram below the answer is the concept . Jump to it ↓

Tailored explanation · switch back to · ·
What should the new diagram focus on?
How well did you know this?
AI:

Saved in this browser - sign in to keep your review list.

How should your speech become text?

Listening… your words appear above as you speak - tap Stop when you're done.

Recording · cr - tap Stop & transcribe when you're done.

Transcribing with AI…

Voice:

Keep going - a few more words and AI can grade it.

Interview lens

Likely follow-ups, what you can say, and the weak answers to avoid.

Sign in free to open it Free account - the lens opens as soon as you're back.

Want a quick review of the fundamentals? See the Java cheatsheet.

← Back to all Java questions
Pro · $10/mo

82 of 95 Java answers are in Pro.

Full answers, code samples, and AI explanations that go simpler or deeper. Cancel anytime.

  • Full answers + code
  • AI explanations, simpler or deeper
  • 1,000 AI credits / month
  • Cancel anytime