异常的两个主要涉及的两个主要方面:
1、什么时候抛出异常
2、抛出checked还是unchecked的异常
异常的自定义比较简单,如果是checked的异常,直接继承Throwable类,实现构造方法即可
如果是unchecked的异常,则继承自RuntimeException类,实现构造方法即可
checked异常 常用的有SqlException,IOException等
unchecked异常 常遇到的有NullPointerException,IndexOutOfBoundsException,ClassCastException等
具体怎么使用需要看自己的理解吧~~
下面是一个自定义超级简单的checked异常的例子:
附件为MyEclipse中的工程
1、什么时候抛出异常
2、抛出checked还是unchecked的异常
异常的自定义比较简单,如果是checked的异常,直接继承Throwable类,实现构造方法即可
如果是unchecked的异常,则继承自RuntimeException类,实现构造方法即可
checked异常 常用的有SqlException,IOException等
unchecked异常 常遇到的有NullPointerException,IndexOutOfBoundsException,ClassCastException等
具体怎么使用需要看自己的理解吧~~
下面是一个自定义超级简单的checked异常的例子:
package com.demo;
public class BaseCheckedException extends Throwable {
// 1、什么时候抛出异常--涉及到服务类
// 2、抛出checked还是unchecked的异常--涉及到客户类
//自定义异常类的主要作用是区分异常发生的位置,当用户遇到异常时,
//根据异常名就可以知道哪里有异常,根据异常提示信息进行修改。
BaseCheckedException(){
super();
}
BaseCheckedException(String message){
super(message);
}
BaseCheckedException(Throwable cause){
super(cause);
}
BaseCheckedException(String message, Throwable cause){
super(message,cause);
}
}
附件为MyEclipse中的工程