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();
		}
	}
}

每天进步一点点!

全部评论

相关推荐

评论
点赞
收藏
分享
牛客网
牛客企业服务