java - 得到一个奇怪的空指针异常

标签 java nullpointerexception

我在这一行得到一个空指针异常:

private ArrayList<DrawableEntity> entitiesToDraw = Loader.instance().getDrawableEntities();

Loader 的构造函数显然没有问题:

public static Loader instance() {
    if (instance == null) {
        new Loader();
        System.out.println("Loader ready");
    }
    return instance;
}

因为我收到消息“Loader ready”。 我不明白,问题似乎出现在调用 getDrawableEntities() 之前,但我什么也没看到,而且它不在 getDrawableEntities() 内部。

最佳答案

您忘记将其分配给实例

   public static Loader instance() {
      if (instance == null) {
        instance = new Loader();
        System.out.println("Loader ready");
       }
     return instance;
   }

顺便说一下,如果那是单例那么它是错误的(不是线程安全的),Here's a way to implement the singleton pattern .

关于java - 得到一个奇怪的空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26947534/

相关文章:

java - 线程中出现异常 "main"java.lang.NullPointerException 错误。使用GPdraw

java - 什么是NullPointerException,我该如何解决?

java - 为什么这个空指针异常不断出现?我最后写了错误。我还提到了发生错误的行

java - 通过树递归搜索而不传递对象

java - 一种在Java应用程序启动时加载大量资源的方法

java - 当我在字段类型中添加 "spatialContextFactory"属性时,Solr Core 未加载

java - SQL 代码的 NullPointerException 错误

java - Hbase批量加载异常(HFile版)

java - 什么是核心 Java 中的桥接模式示例?

java - 空指针异常逐行读取文件