Skip to content

8.4 Exception Hierarchy & Catch Rules

🎯 Lesson Objectives

  • Throwable क्लास पदानुक्रम (Hierarchy Tree)।
  • Multiple Catch ब्लॉक्स में चाइल्ड-पैरेंट क्रम के नियम।
  • Java 7 का Multi-Catch Block (|) सिंटैक्स।

🌳 Java Exception Hierarchy Diagram

                       +-------------------+
                       |  java.lang.Object |
                       +-------------------+
                                 |
                                 v
                       +-------------------+
                       |     Throwable     |
                       +-------------------+
                                 |
            +--------------------+--------------------+
            |                                         |
            v                                         v
   +-----------------+                       +-----------------+
   |      Error      |                       |    Exception    |
   | (Unrecoverable) |                       |  (Recoverable)  |
   +-----------------+                       +-----------------+
     - OutOfMemoryError                               |
     - StackOverflowError            +----------------+----------------+
                                     |                                 |
                                     v                                 v
                            +-----------------+               +-----------------+
                            | RuntimeException|               | Checked Except. |
                            |   (Unchecked)   |               | (Compile-time)  |
                            +-----------------+               +-----------------+
                              - NullPointerEx                   - IOException
                              - ArithmeticEx                    - SQLException

⚠️ Multiple Catch Rule: Specific to General

हमेशा चाइल्ड (विशिष्ट) एक्सेप्शन को ऊपर और पैरेंट (Exception) को सबसे नीचे रखें:

try {
    // कोड
} catch (ArithmeticException e) {
    // सबसे विशिष्ट
} catch (NullPointerException e) {
    // विशिष्ट
} catch (Exception e) {
    // सबसे सामान्य (Generic Fallback)
}

🧭 Navigation

Last updated on