从另一个类调用类函数.错误

H.B*_*.B. 0 java extends function nullpointerexception

简化:两个班级.X和Y.

Y延伸X.

在XI电话中:

    Y periodic;
Run Code Online (Sandbox Code Playgroud)

然后在XI中调用Y的一个函数:

periodic.conditionDepreciate();
Run Code Online (Sandbox Code Playgroud)

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();
}
Run Code Online (Sandbox Code Playgroud)

但无论函数是什么,我都会收到来自X文件的错误说:


X.main中的X.(X.java:71)中的线程"main"java.lang.NullPointerException
中的异常(X.java:245)

第71行是指我打电话时:

periodic.conditionDepreciate();
Run Code Online (Sandbox Code Playgroud)

有人可以帮助解释错误吗?

编辑:

我希望X调用Y的各种函数.基本上,这些都是周期性事件计时器.

我最初在X类文件中有定时器,但为了提高可读性,我移动到了自己的类文件中.

我不确定这样的东西需要初始化... Y扩展X所以它应该从X得到它的所有值?(我认为...)

我发布了上面的一个计时器函数 - 我是否需要告诉Y类文件ameba.health是什么?要么 ?我想我只需要查找函数和类>.>

Dav*_*eto 5

似乎是一个periodic引用问题,因为你永远不会创建对象,比如

Y periodic = new Y();
Run Code Online (Sandbox Code Playgroud)