我正在创建一个为第一次运行安装3个记录存储的应用程序。然后它必须使用已安装的值。该应用程序在模拟器和移动设备的第一次运行期间工作正常。但是第二次运行在我的启动画面加载后显示空指针异常。在启动画面之后,我已经加载了唱片店。但是记录存储也会被删除,在第一次运行期间更新某些功能的原因。在这段时间内,midlet运行没有任何问题。但是当我第二次在我的手机中打开应用程序时,会弹出一条错误消息,指出空指针异常。
我需要以下帮助...... 1.我可以使用旧的recorstores再次运行模拟器吗?如果是这样的话? 2.如何纠正空指针异常的问题?
请帮忙。
答案 0 :(得分:5)
要点:只需读取堆栈跟踪并相应地修复空指针。
stacktrace的第一行应该包含引起它的源代码的行号。打开源代码并转到该行。它应该看起来像:
someObject.doSomething();
特别是在那里查看点运算符.
用于访问或调用某个对象实例的位置。此类代码行上的NullPointerException
表示someObject
实际上是null
。它只是指 nothing 。您无法访问它,也无法调用任何方法。
修复NullPointerException
所需要做的就是确保someObject
不 null:
if (someObject == null) {
someObject = new SomeObject();
}
someObject.doSomething();
或者,如果someObject
不是null
,则只进行访问/调用。
if (someObject != null) {
someObject.doSomething();
}