Java基础 自定义异常 自定义一个学生类,属性有姓名、年龄,如果用户在给学生年龄赋值时,年龄小于0抛出一个AgeLT0Exception,大于150 抛出一个AgeGT150Exception
题目:
自定义一个学生类,属性有 姓名 年龄,如果用户在给学生年龄赋值时,年龄小于0抛出一个AgeLT0Exception,大于150 抛出一个AgeGT150Exception。
本题主要是练习Java自定义异常,自定义异常时需要继承父类Exception。
学生类
public class Student {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) throws AgeLT0Exception, AgeGT150Exception {
if (age < 0) {
throw new AgeLT0Exception();
} else if (age > 150) {
throw new AgeGT150Exception();
} else {
this.age = age;
}
}
}
自定义异常类:年龄小于0抛出一个AgeLT0Exception
public class AgeLT0Exception extends Exception {
public AgeLT0Exception() {
this("年龄小于0异常");
}
public AgeLT0Exception(String message) {
super(message);
}
}
自定义异常类:年龄大于150 抛出一个AgeGT150Exception
public class AgeGT150Exception extends Exception {
public AgeGT150Exception() {
this("年龄大于150异常");
}
public AgeGT150Exception(String message) {
super(message);
}
}
测试类
public class TestStudent {
public static void main(String[] args) {
Student student = new Student();
try {
student.setAge(520);
} catch (AgeLT0Exception e) {
e.printStackTrace();
} catch (AgeGT150Exception e) {
e.printStackTrace();
}
try {
student.setAge(-1);
} catch (AgeLT0Exception | AgeGT150Exception e) {
e.printStackTrace();
}
}
}
每天进步一点点!