java核酸检测异常处理

//郑州轻工业大学
//题号:实验四 第一题
//题目:在新冠肺炎疫情防控常态化形势下,核酸检测为疫情应对与处置发挥了重要的技术支撑作用,人们外出前经常需要先进行核酸检测。现为检测机构设计一个处理被检人员信息的管理系统,请定义一个类存储被检人员信息,要求:
(1)分别定义身份证号非法异常类、年龄非法异常类和新冠肺炎病毒阳性异常类;
(2)需要保存的隐私信息有身份证号、姓名、年龄、检测结果;
(3)定义构造方法初始化对象属性;
(4)提供属性访问方法;其中身份证号属性值的设置方法定义时,如果身份证号的前17位出现非数字,应抛出身份证号非法异常;其中年龄属性值的设置方法定义时,如果年龄不在1~150范围内,应抛出年龄非法异常;
(5)定义一个诊断方法,用于输出每个人的信息。当某人的检测结果为“阳性”时,应抛出新冠肺炎病毒阳性异常,并输出“隔离治疗”;
(6)分别用下列数据测试被检人员信息类,合理处理可能出现的异常,并输出“新冠肺炎检测管理信息系统V1.0”:
53010219200508011Z 张三 18 阴性
1X0701199310302288 李四 60 阴性
520302198912097945 王五 151 阴性
42092219731015461X 赵六 20 阳性
注:如果认为有必要,可以增加其他的成员方法或构造方法来辅助完成任务。何时触发异常、如何处理异常可自行决定。

————————————————
实际上这作业的题目描述,已经详细的包含了题目分析了,还列出了1,2,3,4,5,6项分析,只需要按照分析,一步一步写出来就好了。

真的不是我懒,这题确实解释的很详细了,没什么可以分析的了

直接上代码:看不懂,或代码问题评论区留言

public class xinguan {
    private String ID;
    private String name;
    private int age;
    private String jieguo;

    public xinguan(String ID, String name, int age, String jieguo) throws Exception {
        this.name = name;
        setID(ID);

        setAge(age);
        setJieguo(jieguo);
    }

    public String getID() {
        return ID;
    }

    public static boolean isNumeric(String str) {

        for (int i = str.length() - 1; --i >= 0; ) {

            int chr = str.charAt(i);

            if (chr < 48 || chr > 57)

                return false;

        }

        return true;

    }                               //类可以相互调用方法

    public void setID(String ID) {
        String s = String.valueOf(ID);
        try {
            if (isNumeric(s) == true)
                this.ID = ID;
            else
                throw new Exception(getName() + "身份证异常");      //抛出异常对象
        } catch (Exception e) {
            System.out.println(e.toString());
        }
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        try {
            if (age > 0 && age <= 150)
                this.age = age;
            else
                throw new Exception(getName() + "年龄非法异常");      //抛出异常对象
        } catch (Exception e) {
            System.out.println(e.toString());
        }
    }

    public String getJieguo() {
        return jieguo;
    }

    public void setJieguo(String jieguo) {
        this.jieguo = jieguo;
    }

    public void zhenduan() {
        try {
            if (jieguo == "阴性")
                System.out.println(getName() + "结果正常为阴性");
            else
                throw new Exception(getName() + "新冠病毒阳性异常");      //抛出异常对象
        } catch (Exception e) {
            System.out.println(e.toString() + "\n隔离治疗");
        } finally {
            System.out.println("新冠肺炎检测管理系统V1.0");
        }

    }

    public static void main(String[] args) throws Exception {
        xinguan a1 = new xinguan("53010219200508011Z", "张三", 18, "阴性");
        xinguan a2 = new xinguan("1X0701199310302288", "李四", 60, "阴性");
        xinguan a3 = new xinguan("520302198912097945", "王五", 151, "阴性");
        xinguan a4 = new xinguan("42092219731015461X", "赵六", 20, "阳性");
        a1.zhenduan();
        a2.zhenduan();
        a3.zhenduan();
        a4.zhenduan();
    }
}

运行结果图
java核酸检测异常处理_第1张图片
总地址:郑州轻工业大学实验整合

水平有限,如有错误,还望大神指正;(^_−)☆

java核酸检测异常处理_第2张图片

你可能感兴趣的:(郑州轻工业大学作业,java,开发语言,后端,其他,经验分享)