异常

2021.02.02
第24次记录

课堂笔记:
1.SUN提供的JDK内置的异常肯定是不够用的。在实际开发中,有很多业务,
这些业务出现异常之后,JDK中都是没有的。和业务挂钩的,那么异常类需要
程序员自己去定义
2.java中自定义异常(死记硬背即可):
第一步:编写一个类继承Exception或者RuntimeException
第二步:提供两个构造方法,一个无参数的,一个带有String参数的

代码演示1:

public class ExceptionText09 {
    public static void main(String[] args) {
        MyException e = new MyException("用户名不能为空");
        e.printStackTrace();
        String msg = e.getMessage();
        System.out.println(msg);
    }
}
class MyException extends Exception{
    public MyException(){

    }
    public MyException(String s){
        super(s);
    }
}

输出结果:
javaseAdvance.MyException: 用户名不能为空
at javaseAdvance.ExceptionText09.main(ExceptionText09.java:18)

代码演示2:

public class UserService {
    public void register(String username, String password) throws IllegalNameException {
        //引用==null的这个判断最好放到所有条件的最前面
        //经验2:把null放到前面,null == username
        if (null == username || username.length() < 6 || username.length() > 14){
            throw new IllegalNameException("用户名长度必须为[6-14]之间");
        }
        //程序能够执行到此处,说明用户名合法
        System.out.println("注册成功,欢迎["+username+"]");
    }
}
public class IllegalNameException extends Exception{
    public IllegalNameException(){

    }
    public IllegalNameException(String s){
        super(s);
    }
}
public class Text {
    public static void main(String[] args) {
        //创建UserService对象
        UserService userservice = new UserService();
        try {
            userservice.register("ZhangSan", "wang123");
        } catch (IllegalNameException e) {
            System.out.println(e.getMessage());
        }
    }
}

输出结果:
注册成功,欢迎[ZhangSan]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值