java - 如何实例化抽象类以删除 NullPointerException?

标签 java nullpointerexception abstract-class instantiation jmonkeyengine

所以问题标题有点奇怪,但这是我能想到的表达观点的唯一方法。我这样做时遇到了 NullPointerException (多余的代码已被删除):

public abstract class Generator extends SimpleApplication{

    private static SimpleApplication sa;

    public static void Generator(){
        CubesTestAssets.initializeEnvironment(sa);
    }

我知道 private static SimpleApplication sa;null 但当我实例化它时,我收到此错误而不是 NullPointerException :

SimpleApplication is abstract; cannot be instantiated

我正在使用 jMonkey Engine 3。如果有人知道我如何解决这个问题,那就太好了!谢谢!

最佳答案

如果您仔细查看 JMonkey 文档,SimpleApplication由您扩展以创建您的应用程序。

您应该创建一个扩展 SimpleApplication 的新类并实现缺少的方法。然后,您实例化您的自定义类并将其作为参数传递。

有点像这样:

public class myCustomSimpleApplication extends SimpleApplication {

    // Implementing the missing methods
    @Override
    public void simpleInitApp() {
    }

    @Override
    public void simpleUpdate(float tpf) {
    }

    // etc...

}

然后...

private static SimpleApplication sa = new myCustomSimpleApplication();

public static void Generator(){
    CubesTestAssets.initializeEnvironment(sa);
}

关于java - 如何实例化抽象类以删除 NullPointerException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22790290/

相关文章:

c++ - 虚函数和模板冲突

java - 一键播放和暂停Kotlin中的媒体录制

java - 如何从复杂的字符串中提取整数?

java - 单击启动和停止计时器服务

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

java - 为抽象类实现 clone()、equals() 或 hashCode() 是否有意义?

java - 考虑在您的配置中定义类型为 'com.gisapp.gisapp.dao.IUserDAO' 的 bean

java - Switch 语句中的 PowerMockito 枚举抛出 NPE

java - 如何检查 JPanel 是否包含 JLabel?

c# - 抽象类中嵌套抽象类及其实现方式