应用场景
对于运行时出现的异常,可以现在当前层级进行抛出,然后再try-catcah处理,
代码模板
自定义的异常类
//声明一个自定义异常类
public class TeamException extends Exception{
//1.标识
static final long serialVersionUID = -7034897193246939L;//类的唯一的标识
//2.空参构造器
public TeamException() {
}
//3.带参构造器
public TeamException(String message) {
super(message);
}
}
调用该异常类的方法
//throws 抓住
public Employee getEmployee(int id) throws TeamException{
for (int i = 0; i < employees.length; i++) {
if (employees[i].getId() == id){
return employees[i];
}
}
//抛出
throw new TeamException("找不到指定员工!");
}
调用该子类的方法的方法(一般都是在main函数内)
private void addMember(){
// System.out.println("添加团队成员");
System.out.println("---------------------添加成员---------------------");
System.out.println("请输入要添加的员工ID:");
int id = TSUtility.readInt();
try {
Employee emp = listSvc.getEmployee(id);
teamSvc.addMember(emp);
System.out.println("添加成功");
TSUtility.readReturn();
} catch (TeamException e) {
// TODO Auto-generated catch block
System.out.println("添加失败,原因:" + e.getMessage());
}
}