Java基础 实验五 异常(文末送彩蛋)

一、实验目的

    自定义非法年龄类IllegalAgeException,定义一个Person类,包含年龄,姓名,性别等属性,编写属性设置和读取函数,在设置年龄函数中,判断参数是否符合要求(1~150),如果不符合则抛出异常,编写main函数进行测试。

二、实验代码

1、IllegalAgeException.java(自定义异常类)

package exceptionfive;

public class IllegalAgeException extends Exception {
    public IllegalAgeException() {
        super();
    }
    public IllegalAgeException(String str) {
        super(str);
    }
}

2、Person.java

package exceptionfive;

public class Person {
    private String name;
    private int age;
    private String sex;
    public void setName(String str) {
        name = str;
    }
    public String getName() {
        return name;
    }
    public void setAge(int i) throws IllegalAgeException{//抛出异常
        if(i < 1 || i > 150) {
            age = -1;
            throw new IllegalAgeException("年龄值输入出错,范围必须在1到150之间!");
        } else {
            age = i;
        }
    }
    public int getAge() {
        return age;
    }
    public void setSex(String str) {
        sex = str;
    }
    public String getSex() {
        return sex;
    }
}

3、ExceptionFive.java(主类)

package exceptionfive;

import java.util.logging.Level;
import java.util.logging.Logger;

public class ExceptionFive {
    public static void main(String[] args) {
        Person per = new Person();   
        per.setName("zhangSan");
        per.setSex("男");
        try {
            per.setAge(171);
        } catch (Exception ex) {//捕获异常
            Logger.getLogger(ExceptionFive.class.getName()).log(Level.SEVERE, null, ex);
            System.out.println(ex.getMessage());
        } finally {
            System.out.println(per.getName() + " " + per.getSex() + " " + per.getAge());
        }
    }
}

三、实验结果

Java基础 实验五 异常(文末送彩蛋)

送你一本 21天学通Java(第6版).pdf 网盘链接:https://pan.baidu.com/s/1LenFjeO4ldMpiPFr8vVQyw 

(若链接失效,可发邮件到[email protected]