使用e.getMessage()编写下列Java程序: 定义一个"年龄异常类":AgeException,使其继承自Exception,并添加无参、String参数的构造方法; 定义一个"性别异常类":SexException,使其继承自Exception,并添加无参、String参数的构造方法; 定义一个Student类,属性:姓名、性别、年龄。 在性别的set方法中判断是否是男/女,如果不是则抛出:性别异常 在年龄的set方法中判断年龄是否是15–50之间,如果不是则抛出:年龄异常 编写测试类,创建一个Student对象,并在try{}中调用setXxx()方法为对象属性赋值,在catch()中打印年龄错误。 注意:需要使用e.getMessage()
时间: 2024-03-02 12:52:21 浏览: 47
关于Java发送短信
4星 · 用户满意度95%
以下是使用e.getMessage()编写的Java程序:
AgeException.java
```
public class AgeException extends Exception {
public AgeException() {}
public AgeException(String message) {
super(message);
}
}
```
SexException.java
```
public class SexException extends Exception {
public SexException() {}
public SexException(String message) {
super(message);
}
}
```
Student.java
```
public class Student {
private String name;
private String sex;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) throws SexException {
if (!sex.equals("男") && !sex.equals("女")) {
throw new SexException("性别异常");
}
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) throws AgeException {
if (age < 15 || age > 50) {
throw new AgeException("年龄异常");
}
this.age = age;
}
}
```
Test.java
```
public class Test {
public static void main(String[] args) {
Student s = new Student();
try {
s.setName("张三");
s.setSex("人妖");
s.setAge(60);
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
```
在测试类中,我们创建了一个Student对象,并在try块中调用setXxx()方法为其属性赋值,在catch块中使用e.getMessage()打印异常信息。如果出现年龄异常或性别异常,就会打印对应的错误信息。
阅读全文