【发布时间】:2012-05-12 17:53:27
【问题描述】:
简化: 两班。 X 和 Y。
Y 扩展 X。
我在 X 中调用:
Y periodic;
然后在 X 中调用 Y 的函数之一:
periodic.conditionDepreciate();
Y中的实际功能块是:
public void conditionDepreciate() {
ActionListener conditionDepreciation = new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if (ameba.health > 0) {
ameba.health -= 1;
}
}
};
new Timer(conditionDelayCount * 1000, conditionDepreciation).start();
}
但无论函数是什么,我都会收到来自 X 文件的错误消息:
线程“main”中的异常 java.lang.NullPointerException
在 X.(X.java:71)
在 X.main(X.java:245)
第 71 行指的是当我调用时:
periodic.conditionDepreciate();
有人可以帮忙解释一下这个错误吗?
编辑:
我希望 X 调用 Y 的各种函数。基本上,它们都是周期性事件计时器。
我最初在 X 类文件中有计时器,但为了提高可读性,我移到了它自己的类文件中。
我不确定这样的东西需要用什么来初始化... Y 扩展 X 所以它应该从 X 中获取所有值? (我认为...)
我在上面发布了一个计时器函数 - 我需要告诉 Y 类文件 ameba.health 是什么吗?或者 ?我想我只需要查找函数和类>.>
【问题讨论】:
标签: java function nullpointerexception extends