「java里空指针是什么」java空指针问题如何解决
本篇文章给大家谈谈java里空指针是什么,以及java空指针问题如何解决对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
空指针是什么意思
C/C++中有指针的概念,用于指向一个内存地址。当指针指向0(NULL)时,叫空指针,表示没有。
在面向对象的语言(如java)中,没有指针的概念,但它的变量就相当于指针。当一个变量没有指向任何对象时,通常赋予null值,习惯上也称为空指针(因为科班程序员都学过C),这时如果误认为有对象,并调用其方法或属性时,就会报空指针(Null Pointer)错误。
JAVA 空指针是咋回事啊
你对并不存在或者没有实例化的对象进行操作,就会报空指针异常。例如你上面的代码中,frame并没有在一开始进行实例化,把frame=new JFrame();放到第一行就好了。
java 空指针
1、不是空指针异常的:
String a = "Hello";
a.toString();
这时,a是被赋值的,可以调用a对应类String的方法来执行操作,操作正常,不会发生空指针异常
2、1、空指针异常:
String b=null;
String a =b;
a.toString();
看到没,a引用了b,而b是null,所以a调用String类的方法时就会报空指针异常,所以你要避免在给a传值时不要传null值
3、异常处理
try {
// 这里就是正常执行的程序
} catch (Exception e) {
// 这里做异常处理,如果try里面发生了空指针异常,这里可以捕获到,根据需要写处理空指针的代码,如果try中没有发生异常,catch这里不会执行的
}
例如:
String b = null;
String a = null;
try {
a =b;
a.toString();
} catch (Exception e) {
// a=null,发生空指针异常
if(a==null) {
a="hello";
}
}
a.toString(); //这里再调用String的方法就不会发生空指针异常了,因为在catch中,给a赋非null的值了
为什java会现空指针异常???
比如你现在有一个String类型的数据
如:
String
testStr
=
null;
你现在使用下面这个语句
testStr.indexOf();
则就会出现空指针,因为你的testStr这个字符串是空的,不存在的,对一个不存在的对象进行操作,就会出现空指针
java空指针引用!
所谓的空指针,就是指你的引用指向了没有分配内容的内存,这个时候就会报空指针异常,它属于非受控异常
java的空指针一般都是由什么引起的?
在使用对象调用其方法或属性的时候,该对象为null值,则会导致空指针。
空指针异常是java中最常见,也是最容易发现问题所在并修改的一种异常。
根据控制台报的异常路径锁定某行,寻找该行中的调用发生在哪里。
例:
y.append(x);
若此行报异常,那必然是y对象为null值,只需向前寻找y对象被赋值的位置,可加System.out.println(y);语句来确认是否y为null值,也可在适当位置加其他的输出语句来检查哪里导致的null值,修改代码使其不再为null即可~
关于java里空指针是什么和java空指针问题如何解决的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。