自定义异常
1.编译时异常,直接继承Exception
2.运行时异常,直接继承RunTimeException
弄一个简单的命名时出的异常,生活中用到的QQ,微信等等,你给自己改一个名称的时候写的太长时,就会提示你你写的太长,实际上这就是一个异常,不过是一个经过处理的异常。我们就来写一个名字太长的异常
先新增Custon和Custom1两个类
Custom类代码如下:
public class Custom {
//对外提供一个注册的方法
public void register(String name) throws Custom1{
//先判断一下名字的长度是否大于8
if(name.length()>8){
Custom1 e = new Custom1(“名字太长了”);
//当长度大于8的时候就抛出异常
throw e;//throw是将异常抛给它的方法
}else{
//当名字长度小于等于8的时候输出:注册成功
System.out.println(“注册成功”);
}
}
public static void main(String[] args) throws Custom1{
Custom g = new Custom();
g.register(“123456789”);//名字字符串
}
}
Custom1类代码如下
public class Custom1 extends Exception{
//定义异常的时候,一般提供两个构造方法
public Custom1(){}
public Custom1(String msg){//Stringmsg代表的是碰到此异常时输出的信息
super(msg);
//super的意思是:代表的是当前类的父类的对象
}
}
当名字的长度大于8的时候就会输出一个异常