Creating our Own Exception Subclasses?

You can create your own exception class by defining a subclass of Exception.

The Exception class does not define any methods of its own. It inherits methods provided by Throwable.

 

Example

 

The following program creates a custom exception type.

 

class MyException extends Exception {

  private int detail;

  MyException(int a) {

    detail = a;

  }

 

  public String toString() {

    return "MyException[" + detail + "]";

  }

}

 

public class Main {

  static void compute(int a) throws MyException {

    System.out.println("Called compute(" + a + ")");

    if (a > 10)

      throw new MyException(a);

    System.out.println("Normal exit");

  }

 

  public static void main(String args[]) {

    try {

      compute(1);

      compute(20);

    } catch (MyException e) {

      System.out.println("Caught " + e);

    }

  }

}