您只需扩展异常类以创建自定义异常。如果要创建未选中的异常,则需要扩展运行时异常。 让我们用示例来理解这一点。您有员工名单,如果员工列表中的任何员工的年龄小于 18,则需要抛出无效 AgeException(我们的自定义例外)。 示例: 创建无效AgeException.java,如下所示
创建 POJO 类,称为
country.java 让我们创建员工检查Main.java。此类将具有主方法。当您运行上述
程序时,您将获得以下输出:正如您所看到的,如果我们有任何员工的年龄低于 18 岁,我们将抛出无效年龄异常。
package org.arpit.java2blog;
public class InvalidAgeException extends Exception{
InvalidAgeException(String message) { super(message); } }
package org.arpit.java2blog;
public class Employee {
private String name; private int age;
Country(String name, int age ){ this.name = name; this.age=age; } public String toString() { return name; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setName(int age) { this.age = age; } }
package com.arpit.java2blog;
import java.util.ArrayList; import java.util.List;
public class EmployeeCheckMain {
public static void main(String args[]) { List employees = new ArrayList<>(); Employee e1 = new Employee("Adam",20); Employee e2 = new Employee("Brain",19); Employee e3 = new Employee("Stuart",22); Employee e4 = new Employee("Paul",21); employees.add(e1); employees.add(e2); employees.add(e3); employees.add(e4); boolean safe; try { safe = checkListOfEmployees(employees); if (safe) System.out.println("We don't have any employee with less than 18"); Employee e5 = new Employee("Dev",17); employees.add(e5); checkListOfEmployees(employees); } catch (InvalidAgeException e) { e.printStackTrace(); }
}
public static boolean checkListOfEmployees(List
employees) throws InvalidAgeException { for (int i = 0; i < employees.size(); i++) { Employee employee = employees.get(i); if (employee.getAge() < 18) { throw new InvalidAgeException("Employee'sAge is less than 18"); }
} return true; } }
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。