java--自定义异常类
如果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); //这样就可以用自己定义的类来捕捉异常了
}}}
像是上节课我们说了,如果你开发程序用到好多组件,或其它厂商的东西。那么出现的异常会是莫明其妙的,这样的话会给调试带来很大的不便。往往在开发的过程中会写很多自定义的异常类。
总结: 异常处理机制是保证java程序正常运行、具有较高安全性的重要手段。对于开发良好的编程习惯是非常重要的。