java中常见异常类总结

  • 格式:doc
  • 大小:12.00 KB
  • 文档页数:2

1)、NullPointerException(值为空):见的最多了,其实很简单,一般都是在null对象上调用方法了。

String s=null;
boolean eq=s.equals(""); // NullPointerException
这里你看的非常明白了,为什么一到程序中就晕呢?
public int getNumber(String str){
if(str.equals("A")) return 1;
else if(str.equals("B")) return 2;
}
这个方法就有可能抛出NullPointerException,我建议你主动抛出异常,因为代码一多,你可能又晕了。

public int getNumber(String str){
if(str==null)
{throw new NullPointerException("参数不能为空");}
//你是否觉得明白多了if(str.equals("A")) return 1;
else if(str.equals("B")) return 2;
}
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:非法参数,在把字符串转换成数字的时候经常出现的一个异常,我们可以在自己的程序中好好利用这个异常。