自定义异常
- 异常都是JDK内部定义好的我们不能改变(写死的),在实际开发工作java开发人员要根据自己业务的异常情况自定义异常比如用户注册异常。
案例
要求:我们模拟注册操作,如果用户名已存在,则抛出异常并提示:该用户名已经被注册。
首先定义一个登陆异常类RegisterException:
自定义异常类
public class RegisterException extends Exception {
//无参构造
public RegisterException() {
}
//出现异常提示
public RegisterException(String message) {
super(message);
}
}
测试类
public class test {
//表示数据中有这3个账号
private static String[] name = {"123","456","789"};
public static void main(String[] args) {
try {
//调用方法
names("123");
System.out.println("注册成功");
} catch (RegisterException e) {
e.printStackTrace();
}
}
public static boolean names(String namee) throws RegisterException {
//获取上方数组里边数据
for (String n :name ) {
//判断如果名字被注册 就抛出登陆异常
if (n.equals(namee)){
throw new RegisterException("账号"+n+"已被注册");
}
}
return true;
}
}
注册失败
com.atlvsong.TEST.day15.RegisterException: 账号123已被注册
at com.atlvsong.TEST.day15.test.names(test.java:23)
at com.atlvsong.TEST.day15.test.main(test.java:12)
注册成功
注册成功