所以问题标题有点奇怪,但这是我能想到的表达观点的唯一方法。我这样做时遇到了 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/