为什么要自己编写异常类?假如jdk里面没有提供的异常,我们就要自己写。我们常用的类ArithmeticException,NullPointerException,NegativeArraySizeException,ArrayIndexoutofBoundsException,SecurityException这些类,都是继续着RuntimeException这个父类,而这个父类还有一个父类是Exception。那么我们自己写异常类的时候,也是继续Exception这个类的。
实践:
class MyException extends Exception { //继续了Exception这个父类PRivate int detail;MyException(int a) {detail = a;}public String toString() {return "MyException[" + detail + "]";}}class ExceptionDemo {static void compute(int a) throws MyException {System.out.println("调用 compute(" + a + ")");if(a > 10)throw new MyException(a);System.out.println("常规退出 ");}public static void main(String args[]) {try {compute(1);compute(20);} catch (MyException e) {System.out.println("捕捉 " + e); //这样就可以用自己定义的类来捕捉异常了}}}新闻热点
疑难解答