Java中经常出现的异常报错

1、java.lang.NullPointerException

分析原因:当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括: XXX 调用 null 对象的实例方法。 访问或修改 null 对象的字段。 将 null 作为一个数组,获得其长度。 将 null 作为一个数组,访问或修改其时间片。 将 null 作为 Throwable 值抛出。 应用程序应该抛出该类的实例,指示其他对 null 对象的非法使用。
解决办法:在 Console 下面看异常,再异常打印中从上到下找,自己写的 Java 文件中所抛的异常,分析异常,分析是那个对象没有实例化,而直接使用,处理异常,处理此问题。

2、java.lang.ArrayIndexOutOfBoundsException:

分析原因:出现此异常的原因是用非法索引访问数组时抛出的异常。
解决办法:在 Console 下面看异常,再异常打印中从上到下找,自己写的 Java 文件中所抛的异常,分析异常,对此进行解决。

3、java.lang.NumberFormatException

分析原因: 出现此异常的原因是当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出该异常。
解决办法:在 Console 下面看异常,再异常打印中从上到下找,自己写的 Java 文件中所抛的异常,分析异常,对此进行解决。特别声明的是 request.getParameter(“id”)在 web 开发时,id 没有正确的传入,同样出现此异常。

4、java.lang.ClassCastException: java.lang.Integer cannot java.lang.ClassCastException: be cast to java.lang.String

分析原因: 出现此异常的原因是当应用程序试图将对象强制转换为不是实例的子类时,抛出该异常。例如,以下代码将生成一个 ClassC -astException: Object x = new Integer(0); System.out.println((String)x);
解决办法:一般在把 x 在转化之前,请使用 instanceof 做判断。

5、java.io.FileNotFoundException:

分析原因: 出现此异常的原因是当试图打开指定路径名表示的文件失败时,抛出此异常。
解决办法:在 Console 下面看异常,再异常打印中从上到下找,自己写的 Java 文件中所抛的异常,分析异常,查找自己那个文件或者图片没有放入指定位置,或者查看自己的文件名是否书写正确。

JDBC 方面 java.sql.SQLException:

6、java.sql.SQLException: Access denied for user ‘roota’@‘localhost’ (using password: YES)

分析原因: 出现此异常的原因是需要连接数据库的用户名或者密码有错误。
解决办法:修改连接服务器数据库的用户名或者密码。

7、java.sql.SQLException: Statement parameter 1 not set. java.sql.SQLException:

分析原因:出现此错误的原因是,根据用户名查找用户时,或者根据 id 查找用户时,或者根据 id 删除用户时,没有将指定参数设置为给定的值,即 ps.setXxx(xxx,xxx)。
解决办法:查看异常,从上往下找自己写的 java 中所抛的异常信息, 确认之后,将其对应的代码修改,即:将指定参数设置为给定的值。

8、java.sql.SQLException: error java.sql.SQLException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ’ friend_user where id=1’ at line 1

分析原因:出现此错误的原因是书写的 sql 有错误。
解决办法: 检查需要执行的 sql 语句, 首先在数据库中执行这个 sql,看是否能正确执行。

9、java.sql.SQLException: No value specified for parameter 1

分析原因:出现此异常的原因是没有指定参数。
解决办法: 检测自己写的 Java 代码, 看是否指定了参数,如: stat.set 解决办法: -String(int,String),供参考。

10、java.sql.SQLException: No parameters defined during prepareCall()

分析原因:出现此异常的原因是,根据 id 查找某个对象时,where 没有写条件;或者根据 name 查找某个对象时,where 没有写条件;或者根据 id 删除某个对象时,where 没有写条件。
解决办法:查看异常,从上往下找自己写的 java 中所抛的异常信息, 确认之后,将其对应的代码修改,添加相应的条件。

11、java.sql.SQLException: Parameter index out of range (1 > java.sql.SQLException: number of parameters, which is 0).

分析原因:是因为你要执行的 sql 里参数超过你声明的个数,或者是 sql 语句少了问号。
解决办法:检测 sql 语句是否书写正确。

12、java.lang.ClassNotFoundException: com.mysql.jdbc. Driver

分析原因: 出现此异常的原因是当应用程序试图使用以下方法通过字 符串名加载类时,抛出该异常,分类如下: XXClass 类中的 forName 方法。 ClassLoader 类中的 findSystemClass 方法。ClassLoader 类中的 loadClass 方, 但是没有找到具有指定名称的类的定义。
解决办法:在 Console 下面看异常,再异常打印中从上到下找,自己 写的 Java 文件中所抛的异常,分析异常,查看自己写的 forName 中 的值是否正确,或者有没有空格之类。

你可能感兴趣的:(Java基础知识点(Java,SE))