自定义异常

主讲人:王少华  QQ群号:483773664

学习目标

掌握自定义异常

一、自定义异常

用户自定义异常都应该继承Exception基类,如果希望自定义Runtime异常,则应该继承RuntimeException基类。

定义异常类通常需要提供两种构造器,一种是无参数构造器;另一种是带一个字符串的构造器,这个字符串作为该异常对象的详细说明(也就是异常对象的getMessage方法的返回值)。

1
2
3
4
5
6
public class SexPerson extends Exception{
    public SexPerson(){}
    public SexPerson(String msg){
        super(msg);
    }
}

二、使用自定义异常类

1
2
3
4
5
6
7
8
9
10
11
12
public class Person {
    private String name;
    private int age;
    private String sex;
    public void setSex(String sex) throws Exception {
        if("男".equals(sex)||"女".equals(sex)){
            this.sex = sex;
        }else {
            throw new SexException("性别必须是:男或女");
        }
    }
}