java空指针异常解决办法
1、空指针异常抛出的异常信息一般是:
Exception in thread "main" java.lang.NullPointerException.at xx.Test.tt(Test.java:7)
at xx.Test.main(Test.java:17)。
2、从异常信息中可以看出具体在那个类的哪一行,比如我的在第7行。
3、然后我们可以查看代码中的第7行。
4、从上述图中,我们明显可以看到第7行有个变量“y”,那就有可能变量“y”为空导致的,我们打印一下y的值,打印结果。
java空指针怎么处理
1使用鼠标点击打开eclipse软件。
2点击菜单栏File-->new--->java Project。
3输入java项目名,然后点击finish按钮。
4鼠标选中新建的项目继续新建一个Class类,鼠标右击--new---Class类。
5输入类名,点击finish按钮。
6在新建的类中键入如下代码:
public class HelloWorld {
public static void main(String[] args) {
String str1 = null;
if(str1.equals("Test")) {
System.out.println("空指针异常的代码");
}
}
}
点击运行按钮Run--Run as-->Java Applicatiion,可以看到运行结果空指针异常。
7继续修改该类中的代码为:
public class HelloWorld {
public static void main(String[] args) {
String str1 = null;
try {
/* 这是出现空指针异常代码 */
if(str1.equals("Test")) {
System.out.println("空指针异常的代码");
}
}catch(Exception e) {
System.out.println("出现空指针异常");
}finally {
/*不管是否有异常都执行*/
System.out.println("不管是否有异常都执行");
}
/* 正确的写法代码 */
String str2 = null;
if("Test".equals(str2)) {
System.out.println("equals()方法的正确用法避免空指针异常");
}
}
}
点击Run--Run As-->Java Application运行。
8在控制台查看运行结果,使用try-catch捕捉异常异常,或者正确使用java方法避免异常。
1、先字符串变量未初始化
2、后接口类型的对象没有用具体的类初始化
3、当一个对象的值为空时,你没有判断为空的情况。
4、字符串与文字的比较,文字可以是一个字符串或Enum的元素,如下会出现异常
5、优先使用String.valueOf()方法代替toString()
当程序代码需要对象的字符串表示形式时,请避免使用该对象的toString方法。