类型中的方法不适用于参数

Psy*_*tis 4 java processing arguments object

我在这里查看过很多帖子,看不出我需要的解决方案......

我收到错误:

the method initTimer(untitled.Object, String, int int) in the type untitled.TimerClass is not applicable for the arguments (untitled.Toon, String, int, int)
Run Code Online (Sandbox Code Playgroud)

这让我发疯了.

    timers.initTimer(character, "regenAdd", 0,3);
Run Code Online (Sandbox Code Playgroud)

以上行是抛出错误的行,以下是函数:

public void initTimer(final Object obj, final String method, int delay, int period) {
delay*=1000;
period*=1000;

final Class<?> unknown = obj.getClass();

new Timer().schedule(new TimerTask() {
  public void run() {
    try {
      //get the method from the class 
      Method whatToDo = unknown.getMethod(method, null);
      try {
        //invoke() the object method
        whatToDo.invoke(obj);
      } catch(Exception e) {
        println("Exception encountered: " + e);
      }
    } catch(NoSuchMethodException e) {
      println("Exception encountered: " + e);
    }
    runState = getTimerState();

    if (!runState) {
      println("timer dead");
      this.cancel();
    }
  }
}
, delay, period);
}
Run Code Online (Sandbox Code Playgroud)

在此先感谢任何可以帮助的人:)

附加信息:

runState是一个布尔值,只是因为你无法猜测而且character是Toon类的一个实例; 上面的方法在TimerClass类中,'timers'是该类的实例.

Dan*_*her 6

错误消息

initTimer(untitled.Object, String, int int)类型中的方法untitled.TimerClass不适用于参数(untitled.Toon, String, int, int)

是由于untitled.Toon不延伸的事实untitled.Object.它java.lang.Object当然会扩展,这就是为什么原因并不是源代码中的原因.