java.lang.NullPointerException异常问题解决方案
作者:疯狂一世。
这篇文章主要介绍了java.lang.NullPointerException异常问题解决方案,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
java.lang.NullPointerException异常原因是因为创建了一个引用类型的变量却没有指向任何对象而又去通过这个引用类型变量加点的形式去访问非静态的方法及属性。
给出三种情况,
第一种情况,在启动类中定义了引用类型变量,赋值为空:
/** * 引用类型变量没有指向对象所引起的空指针异常 * @author Superhero * @version 2018年12月16日上午10:32:43 */ //图书类 class Books { private String name; private String author; private double price; public Books() { } public Books(String name, String author, double price) { this.name = name; this.author = author; this.price = price; } public String getName() { return name; } public String getAuthor() { return author; } public double getPrice() { return price; } }
//启动类 public class NullPointerExceptionTest1 { public static void main(String[] args) { Books book=null; //下面一行代码会报指针异常错误: System.out.println("name:"+book.getName()+", author:"+book.getAuthor()+", price:"+book.getPrice()); } }
第二种情况:创建了一个引用类型的数组,却没有给数组元素指向对象而调用了。
public class NullPointerExceptionTest2 { public static void main(String[] args) { Books[] books = new Books[3]; books[0] = new Books("NullPointerException","Superhero",88.8); //books[1],book[2]没有指向对象,所以也报空指针异常 for(Books book : books) System.out.println("name:"+book.getName()+", author:"+book.getAuthor()+", price:"+book.getPrice()); } }
第三种情况是在类中定义了引用类型属性,却没有指向对象而调用了非静态的方法或属性,和第一种情况类似,这里就不给代码了。
到此这篇关于java.lang.NullPointerException异常问题解决方案的文章就介绍到这了,更多相关java.lang.NullPointerException异常内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- Springboot报错java.lang.NullPointerException: null问题
- java.lang.NullPointerException异常的几种原因及解决方案
- 解决java.lang.NullPointerException报错以及分析出现的几种原因
- java.lang.NullPointerException出现的几种原因及解决方案
- java.lang.NullPointerException 如何处理空指针异常的实现
- Java xml出现错误 javax.xml.transform.TransformerException: java.lang.NullPointerException
- Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
- Java.lang.NullPointerException的错误解决