异常练习

复制代码
package com.msd.test02;

/**
 * 开发人:liu
 * 日期:14:55:07
 * 描述:IntelliJ IDEA
 * 版本:1.0
 */
public class Student {
    private String name;
    private int age;
    private  String sex;

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) throws Exception {
        if (sex.equals("男")&&sex.equals("女")){
            this.sex = sex;
        }else{//非男非女的时候
            //解决办法1
            //this.sex="女";
            //解决办法2:给个友好提示,但是打印结果为默认的null效果。
            //System.out.println("对不起,性别录入错误");
            //解决办法3
            //制造运行异常
            //throw new RuntimeException("性别不对");
            //制造检查异常
            /*try {
                throw new Exception();
            } catch (Exception e) {
                e.printStackTrace();
            }*/
            throw new Exception();
        }

    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", sex='" + sex + '\'' +
                '}';
    }

    public Student() {
    }

    public Student(String name, int age, String sex) throws Exception{
        this.name = name;
        this.age = age;
        this.setSex(sex);
    }
}
复制代码
复制代码
package com.msd.test02;

/**
 * 开发人:liu
 * 日期:14:56:27
 * 描述:IntelliJ IDEA
 * 版本:1.0
 */
public class Test {
    //这是一个main方法:是程序的入口
    public static void main(String[] args) {
        Student st=new Student();
        st.setName("菲菲");
        st.setAge(19);
        try {
            st.setSex("asfas");
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println(st.toString());
        Student s= null;
        try {
            s = new Student("娜娜",19,"asdfas");
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println(s.toString());
    }

}
复制代码

 

posted @   爱的加勒比  阅读(14)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示