一、空指针异常产生的主要原因如下:
1、当一个对象不存在时又调用其方法会产生异常obj.method() // obj对象不存在;
2、当访问或修改一个对象不存在的字段时会产生异常obj.method() // method方法不存在;
3、字符串变量未初始化;
4、接口类型的对象没有用具体的类初始化。
二、实现思路:
1、利用空指针异常的表现之一:对空字符串进行操作。
2、设置一个空的字符串,然后对其进行查找操作(可以使用charAt()方法)
3、对将要出现的异常进行捕获
4、打印到控制台
//java代码
public class NullPointerExceptionTest {
/**
* 实现思路:
* 1.空指针异常的表现之一:对空的字符串进行了操作
* 2.设置一个空的字符串,然后对其进行查找操作(可以使用charAt()方法)
* 3.对将要出现的异常进行捕获
* 4.打印到控制台
* */
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义一个空的字符串
String str = null;
//尝试对空字符串进行操作,并捕获异常,输出异常
try{
System.out.println(str.charAt(0));
}catch(Exception e){
System.out.println("异常信息:");
e.printStackTrace();
}
}
}
运行结果图:
程序开发过程中的空指针异常会经常出现,要尽量保持逻辑清晰,能够及时排查错误代码,对可能发生的异常进行捕获,不要影响主程序运行。
public class FirstFile {
String str[];
static FirstFile a;
public void a(FirstFile a){
if(a.equals(FirstFile.this)){
}
}
public static void main(String args[]){
new FirstFile().a(a);
}
}
说这个复制的 ? 怪不得现在百度不行了。。估计是人工智能判断的,那你百度的人工智能 牛逼了。
public static void main(String[] args) {
try {
List
list.get(0);
} catch (NullPointerException e) {
System.out.println(e);
}
}
public class Main {
public static void main(String[] args) {
try {
((String) null).length();
} catch (NullPointerException e) {
System.out.println("Catched NullPointerException.");
}
}
我一直想学