Android 应用程序类的变量 init problme: keep nullpointerexception error



我不是很专业的java程序员,所以我对它的初始化或实例化感到困惑。

我计划将一些全局变量或数据结构放入应用程序类中,这样我就可以在应用程序中的任何地方访问它们。所以我做的是:

public class myApp extends Application {
private MyHomeInfo myHomeInfo;
private MyWorkInfo myWorkInfo;
RequestData requestData;
/**All getters and setters **/
public void onCreate() {
super.onCreate();
myHomeInfo = new MyHomeInfo;
myWorkInfo = new MyWorkInfo;
getMyHomeInfo.setWorkPlace('someplace');
}
setMyHomeInfo(requestData.distanceFromWork(myHomeInfo.getWorkPlace);

像这样的东西。我在调试过程中得到的是,变量是在onCreate期间初始化的,它们不再是null。但一旦退出onCreate函数,它们就会再次变为null。所以当我调用应用程序类中的其他函数时,我得到了一个nullPointerException错误。

有人能提出克服这个问题的方法吗?我知道我可能会创建一些临时变量来存储数据,然后初始化它们,但这会使代码有点难以阅读。

谢谢!

requestData为null,您的操作:setMyHomeInfo(requestData.danceFromWork(myHomeInfo.getWorkPlace);

因此requestData obj 上的空指针

最新更新