java中常见的异常和错误
这个问题是大多数面试题中,会问到的问题,我们作为一个时刻敲代码的这些问题肯定是必须可少的,今天就给大家总结一下,我们在运行代码过程中容易遇到的错误和异常。
常见的异常
1.java.lang.nullpointerexception
异常的解释是"程序 遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片 未经初始化,或者图片创建时的路径错误等等。
2. java.lang.classnotfoundexception
异常的解释是"指定的类不存在",这里主要考虑一下 类的名称和路径是否正确即可,如果是在jb下做的程序包,一般都是默认加上package的,所以转到wtk下后要注意把package的路径加上。
3.java.lang.arithmeticexception
异常的解释是"数学运算异常",比如程序中出现了除以零这样的运算就会出这样的异常。
4.java.lang.arrayindexoutofboundsexception
异常的解释是"数组下标越界",现在程序中大多都有对数组的操作,因此在调用 数组的时候一定要认真检查,看自己调用的下标是不是超出了数组的范围,一般来说,显示(即直接用常数当下标)调用不太容易出这样的错,但隐式(即用变量表 示下标)调用就经常出错了,还有一种情况,是程序中定义的数组的长度是通过某些特定方法决定的,不是事先声明的。
5.java.lang.illegalargumentexception
异常的解释 是"方法的参数错误",很多j2me的类库中的方法在一些情况下都会引发这样的错误,比如音量调节方法中的音量参数 如果写成负数就会出现这个异常,再比如g.setcolor(int red,int green,int blue)这个方法中的三个值,如果有超过255的也会出现这个异常。
6.java.lang.illegalaccessexception
异常的解释是"没有访问权限",当应用程序要调用一个类,但当前的方法即没有对该类的访问权限便会出现这个异常。
常见的错误:
1…java.lang.StackOverflowError
堆栈溢出错误。当一个应用递归调用的层次太深而导致堆栈溢出时抛出该错误
2.java.lang.UnknownError
未知错误。用于指示Java虚拟机发生了未知严重错误的情况。
算术异常类:ArithmeticExecption
3.java.lang.NoClassDefFoundError
未找到类定义错误。当Java虚拟机或者类装载器试图实例化某个类,而找不到该类的定义时抛出该错误。
4.java.lang.Instantiati
实例化错误。当一个应用试图通过Java的new操作符构造一个抽象类或者接口时抛出该异常
空指针异常类:NullPointerException
类型强制转换异常:ClassCastException
数组负下标异常:NegativeArrayException
数组下标越界异常:ArrayIndexOutOfBoundsException
违背安全原则异常:SecturityException
文件已结束异常:EOFException
文件未找到异常:FileNotFoundException
字符串转换为数字异常:NumberFormatException
操作数据库异常:SQLException
输入输出异常:IOException
方法未找到异常:NoSuchMethodException