JAVA中常见异常类总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1)、NullPointerException(值为空):见的最多了,其实很简单,一般都是在null对象上调用方法了。
String s=null;
boolean eq=s.equals("");//NullPointerException
这里你看的非常明白了,为什么一到程序中就晕呢?
public int getNumber(String str){
if(str.equals("A"))return1;
else if(str.equals("B"))return2;
}
这个方法就有可能抛出NullPointerException,我建议你主动抛出异常,因为代码一多,你可能又晕了。
public int getNumber(String str){
if(str==null)
{throw new NullPointerException("参数不能为空");}
//你是否觉得明白多了if(str.equals("A"))return1;
else if(str.equals("B"))return2;
}
2)、NumberFormatException:继承IllegalArgumentException,字符串转换为数字时出现。比如int i=Integer.parseInt("ab3");
3)、ArrayIndexOutOfBoundsException:数组越界。比如int[]a=new int[3];int b=a[3];
4)、StringIndexOutOfBoundsException:字符串越界。比如String s="hello";char c=s.chatAt(6);
5)、ClassCastException:类型转换错误。比如Object obj=new Object(); String s=(String)obj;
6)、UnsupportedOperationException:该操作不被支持。如果我们希望不支持这个方法,可以抛出这个异常。
既然不支持还要这个干吗?有可能子类中不想支持父类中有的方法,可以直接抛出这个异常。
7)、ArithmeticException:算术错误,典型的就是0作为除数的时候。
8)、IllegalArgumentException:非法参数,在把字符串转换成数字的时候经常出现的一个异常,我们可以在自己的程序中好好利用这个异常。