一个类的新实例扩展TimerTask无法从main实例化

时间:2014-12-03 12:56:36

标签: java android timertask

我有以下timed task

static TimerTask timedTask = new TimerTask() {

    @Override
    public void run() {
        // TODO Auto-generated method stub
        System.out.println("timed task");
    }
};

//main method
main(...) {
Timer timer = new Timer();
    timer.schedule(timedTask, (long) logfile.getFileHash().get(1).getTimeStampInMilli());
}

我想要做的是创建一个退出TimerTask的类,这样我就可以随时创建一个新的timerTask。但问题是当我按如下方式创建类时:

class TimerTask2 extends TimerTask {

    @Override
    public void run() {
        // TODO Auto-generated method stub

    }
}

timer.schedule(new TimerTask2(), (long) logfile.getFileHash().get(i).getTimeStampInMilli());被ecipse强调并说:

  

无法访问类型为File_IO的封闭实例。必须使用File_IO类型的封闭实例限定分配(例如x.new A(),其中x是File_IO的实例)。

我试图用主类名来限定te类实例,但它也没有用。

请为此提供建议。

1 个答案:

答案 0 :(得分:0)

将静态修饰符添加到TimerTask2:

static class TimerTask2 extends TimerTask {
    @Override
    public void run() {
    }
}