※自定义异常类
在特定的问题领域,可以通过扩展Exception类或RuntimeException类来创建自定义的异常。异常类包含了和异常相关的信息, 这有助于负责捕获异常的catch代码块,正确地分析并处理异常。
package com.briup.ExceptionT;
/*
*自定义异常
*/
public class DefineException extends Exception{
//自定义异常生成唯一标识码
private static final long serialVersionUID = 1000229313356576230L;
public DefineException() {
super();
}
public DefineException(String message) {
super(message);
}
public DefineException(String message, Throwable cause) {
super(message, cause);
}
public DefineException(Throwable cause) {
super(cause);
}
public DefineException(String message, Throwable cause,
boolean enableSuppression,
boolean writableStackTrace) {
super(message, cause, enableSuppression, writableStackTrace);
}
public DefineException(String message,boolean writableStackTrace){
super(message,null,false,writableStackTrace);
}
}
package com.briup.ExceptionT;
public class DefineTest {
public void login(String name,String passwd) throws DefineException{
if(name.equals("tom")){
if(passwd.equals("1111")){
System.out.println("登陆成功");
}else{
throw new DefineException("密码不正确");
}
}else{
throw new DefineException("用户不存在");
}
}
public static void main(String[] args) {
try {
new DefineTest().login("tom1", "11111");
//...
} catch (DefineException e) {
// TODO Auto-generated catch block
//e.printStackTrace();
String name=e.getMessage();
System.out.println(name);
}
}
}