3.编程实现如下功能: 创建一个学生类,包含学号和年龄两个属性。定义构造方法对这两个属性进行赋值。如果年龄小于 0 或者大于150,则系统抛出异常,并对异常进行处理。(需自定义异常类)
时间: 2024-10-26 22:03:00 浏览: 31
在编程中,我们可以按照以下步骤创建一个具有自定义异常处理的学生类:
首先,我们定义一个名为`Student`的类,它有两个属性:`studentId`(学号)和`age`(年龄),以及相应的构造方法。
```java
public class Student {
private int studentId;
private int age;
// 自定义异常类,用于处理年龄错误
public static class InvalidAgeException extends Exception {
public InvalidAgeException(String message) {
super(message);
}
}
// 构造方法,接受学号和年龄作为参数,并检查年龄的有效性
public Student(int studentId, int age) throws InvalidAgeException {
if (age < 0 || age > 150) {
throw new InvalidAgeException("年龄必须在0到150之间");
}
this.studentId = studentId;
this.age = age;
}
// 获取和设置属性的方法,这里省略了 getter 和 setter
}
```
在这个例子中,当尝试创建一个学生实例时,如果传入的年龄不符合规定范围,会直接在构造函数内部抛出`InvalidAgeException`异常。然后,在调用这个构造方法的地方,你可以通过`try-catch`语句来捕获并处理这个异常。
```java
try {
Student student = new Student(1234, 180); // 这里将抛出异常
} catch (InvalidAgeException e) {
System.out.println("发生了年龄无效的异常:" + e.getMessage());
}
```
阅读全文