java 异常处理之自定义一个异常类及其用法
1.定义异常类
- 自定义的异常类继承现有的异常类
- 提供一个序列号,作为对象的唯一标识
- 提供几个重载的构造器
- 自己或间接继承RuntimeException的自定异常类可以不用显示处理,反之,则需要显示处理。
2.dome
1.这里的自定义异常是在Eclipse中按Ctrl+shift+T,查看RuntimeException源码参照写的。
//如果是继承Exception,则在手动抛出的是时候显示处理,或者丢给jvm
class MyException extends RuntimeException {
//序列号
static final long serialVersionUID = -70348971102145766939L;
public MyException() {
}
public MyException(String msg) {
super(msg);
}
}
public class TestException4 {
public static void main(String[] args) {
Student s = new Student();
s.register(-1);
//自定义异常类,try-catch-finally中的使用
try {
s.register(-11);
} catch (MyException e) {
System.out.println(e.getMessage());
}
System.out.println(s);
}
}
class Student{
int id;
public void register(int id) {
if(id>0) {
this.id = id;
}else {
//手动抛出一个异常的使用
throw new MyException("传入的id有误");
}
}
@Override
public String toString() {
return "Student [id=" + id + "]";
}
}
