J2ME应用程序问题!(空指针异常)

1s2*_*e7v 1 java exception-handling exception java-me recordstore

我正在创建一个应用程序,为第一次运行安装3个记录存储.然后它必须使用已安装的值.该应用程序在模拟器和移动设备的第一次运行期间工作正常.但是第二次运行在我的启动画面加载后显示空指针异常.在启动画面之后,我已经加载了唱片店.但是记录存储也会被删除,在第一次运行期间更新某些功能的原因.在这段时间内,midlet运行没有任何问题.但是当我第二次在我的手机中打开应用程序时,会弹出一条错误消息,指出空指针异常.

我需要以下帮助...... 1.我可以使用旧的recorstores再次运行模拟器吗?如果是这样的话?2.如何纠正空指针异常的问题?

请帮忙.

Bal*_*usC 5

重点:只需读取堆栈跟踪并相应地修复空指针.

堆栈跟踪的第一行应包含引发它的源代码的行号.打开源代码并转到该行.它应该看起来像:

someObject.doSomething();
Run Code Online (Sandbox Code Playgroud)

特别是在那里看点运算符.用于访问或调用某个对象实例.甲NullPointerException这样的代码行指someObject实际上是null.它根本就没有提及.您无法访问它,也无法调用任何方法.

所有你需要做的修复NullPointerException是保证someObject不是空:

if (someObject == null) {
    someObject = new SomeObject();
}
someObject.doSomething();
Run Code Online (Sandbox Code Playgroud)

或者,如果someObject不是,则仅进行访问/调用null.

if (someObject != null) {
    someObject.doSomething();
}
Run Code Online (Sandbox Code Playgroud)

  • 这应该被固定为包含"NullPointerException"的每个问题的建议 (3认同)