java - 线程中出现异常 "main"java.lang.NullPointerException

标签 java

运行以下程序时出现此异常

Exception in thread "main" java.lang.NullPointerException
    at pojo.Bill.main(Bill.java:20)
Java Result: 1

比尔.java

public class Bill {
    public static void main(String s[]){
        Bill b=new Bill();
        b.getBillDetails().setBillNo(444);// line 20
        System.out.println("bill no "+ b.getBillDetails().getBillNo());
    }

    private BillAction billDetails;

    public BillAction getBillDetails() {
        return billDetails;
    }

    public void setBillDetails(BillAction billDetails) {
        this.billDetails = billDetails;
    }

BillAction 中有 billNo 的 getter 和 setter 如何解决这个问题。

最佳答案

您无法为 Bill 对象初始化 BillAction。默认情况下,实例变量设置为 null。因此,调用 BillAction 上的方法将导致 NullPointerException

您需要重写默认构造函数,并确保在其中初始化 BillAction 属性。或者按照 Sanjay 在他的回答中提到的那样简单地初始化它。

关于java - 线程中出现异常 "main"java.lang.NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23052649/

相关文章:

java - 扫描外部主机端口

java - 如何注册监听 android 上的任何联系人更改

java - Kotlin:使用 lambda 代替函数式接口(interface)?

java - JPA Hibernate 延迟加载集合

java - 改变Sprite在unity中的位置

java - 无法选择下拉选项

java - 使用 Retrofit 和 Gson 以及返回动态顶级 JSON 的 api

java - Gradle Apk 构建。失败(:applyRetrolambda FAILED)

java - 如何将自己的连接池的初始化放在struts-config.xml中?

java - 在多服务器 Adob​​e Coldfusion 9 中添加特定实例的 ColdFusion 类路径