自定义“无效名字异常”

 1.编译时异常,直接继承Exception

 2.运行时异常,直接继承RuntimeException

public class IllegalNameException extends Exception{//编译时异常
//public class IllegalNameException extends RuntimeException{//运行时异常   
    public IllegalException(){
    }
    public IllegalException(String msg){
        super(msg);
    }
}

//定义一个消费者类
public class CustomerService{
    public void register(string name)throws IllegalException{
        if(name.length()<6){
            //异常
            //创建异常对象
            IllegalException e=new IllegalException("用户名长度不能少于六位");
            throw e;
            //throw IllegalException("用户名长度不能少于六位");
        }
        //如果执行到此处,说明用户名是合法的。
        System.out.println("用户名合法,注册成功!");
    }
}
//测试类
public class Test{
    public static void main(String[] args){
        String name="nihao";
        CustomerService cs=new CustomerService();
        try{
        cs.register("nihao");
        }catch(IllegalNameException e){
             System.out.println(e.getMessage());
        }
        
    }
}