1、 问题一:索引越界异常。当访问某个序列的索引值小于0或大于等于序列大小时,抛出该异常,java.lang.IndexOutOfBoundsException。遇到该问题,需检查索引值是否正确
2、 问题二:空指针异常。这个是java开发中最常见的问题之一,碰到空指针异常,首先需要定位是哪一句出现了异常,然后再判断是那个对象出现了异常,常用debug模式进行调试
3、 问题三:类型转换异常,java.lang.ClassCastEx罕铞泱殳ception。遇到这样的异常的时候如淡馋衔锂何解决呢?如果你知道要访问的的对象的具体类型,直接转换成该类型即可。如果不能确定类型可以通过下面的两种方式进行处理(假设对象为o): 一、通过o.getClass().getName()得到具体的类型,可以通过输出语句输出这个类型,然后根据类型进行进行具体的处理。二、通过if(o instanceof 类型)的语句来判断o的类型是什么。例如下面例子:Student和Teacher分别是Person的子类,强制将一个Student对象转换称Teacher对象,就会抛出ClassCastException。
4、 问题四:内存溢出异常,java.lang.OutOfMemory苇质缵爨Error。我们可以通过手动改变tomcat启动时的MaxPermSize和PermSize。 在tomcat的bin目录下找到catalina.sh,找到echo "Using CATALINA_BASE: $CATALINA_BASE"这一行,在上面加入以下语句:JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=256m"
5、问题五:文件找不到异常java.io.FileNotFoundException也是我们在开发中经常遇到的问题。抛出该异常时,我们需要去检查文件路径是否正确,或者是否存在。
6、问题六:jdk版本不同导致的异常,此时我们需要检查jdk版本。软件版本一般是向下兼容的,java虚拟机也不例外,即低版本虚拟机生成的class文件可以在高版本虚拟机中运行,反之则未必可以(向上兼容)。