Java 参数不匹配;方法无法转换为TimerTask
我一直在犯这样的错误: 错误:找不到适用于计划的方法(足球,int) 方法计时器。计划(TimerTask,long)不适用 (参数不匹配;无法将足球转换为TimerTask) 方法计时器。计划(计时器任务,日期)不适用 (参数不匹配;无法将足球转换为TimerTask)Java 参数不匹配;方法无法转换为TimerTask,java,timer,schedule,timertask,Java,Timer,Schedule,Timertask,我一直在犯这样的错误: 错误:找不到适用于计划的方法(足球,int) 方法计时器。计划(TimerTask,long)不适用 (参数不匹配;无法将足球转换为TimerTask) 方法计时器。计划(计时器任务,日期)不适用 (参数不匹配;无法将足球转换为TimerTask) import java.util.*; 公开课舞会{ 私有静态整数时间=1; 公共静态void main(字符串[]args){ int a=0,b=0,c=0,d=0,e=0; 截击一号=新截击(); 海滩二=新海滩();
import java.util.*;
公开课舞会{
私有静态整数时间=1;
公共静态void main(字符串[]args){
int a=0,b=0,c=0,d=0,e=0;
截击一号=新截击();
海滩二=新海滩();
足球三号=新足球();
第四篮=新篮();
口袋妖怪五号=新的口袋妖怪();
计时器myTime1=新计时器();
计时器myTime2=新计时器();
计时器myTime3=新计时器();
计时器myTime4=新计时器();
计时器myTime5=新计时器();
对于(int x=0;x您正在创建类型为soccer
soccer three=new soccer();
然后尝试将此类型为“soccer”的对象作为timers schedule函数的第一个参数传递。
但是schedule函数期望第一个参数的类型为TimerTask
你需要做的是
- 让你的足球课从TimerTask开始
@覆盖run()
函数
- 创建类型为
TimerTask
的新对象(因为您的类扩展了TimerTask,请参见下面的示例)
例如:
class soccer extends TimerTask{
@Override
public void run(){
System.out.println("Soccer ball");
}
}
three.cancel()
然后您只需创建如下对象:
TimerTask three = new soccer();
从TimerTask扩展还提供了cancel()
和scheduledExecutionTime()
函数
后者返回此任务最近实际执行的计划执行时间。
cancel()
非常简单,它取消了计时器任务
例如,你可以打电话:
class soccer extends TimerTask{
@Override
public void run(){
System.out.println("Soccer ball");
}
}
three.cancel()
或
类soccer
需要扩展TimerTask
,以便由Timer
调度,如下所示:
class soccer extends TimerTask {
@Override
public void run(){
System.out.println("Soccer ball");
}
}
同样的情况也适用于basket和pokemon类
实际上,您的代码没有编译,因为这些类不是TimerTask
的实例,您试图在myTime1.schedule