从TimerTask中获取应用程序变量

时间:2013-06-11 23:25:01

标签: java

我正在尝试使用Java TimerTask每1分钟执行一次函数。

我有以下代码:

Public Class SomeClass{
String somevar = 'some text';
Timer timer = new Timer ();
TimerTask hourlyTask = new TimerTask () {
@Override
public void run () {
   I need to access the variable somevar here.
}
};
}

取自此处:How to call function every hour? Also, how can I loop this?

问题是在函数run()中,我需要访问包含此TimerTask的应用程序中的一些变量。

我尝试了'this'关键字,但是,很明显,TimerTask是它自己的对象,所以'this'只引用TimerTask中的项。

1 个答案:

答案 0 :(得分:1)

您可以使用OuterClass.this.outerVariable,但通常这不是必需的,除非两个类(外部类和内部类)都具有相同名称的变量。否则外部类字段对内部类是完全可访问的。

如果您显示更多内容,包括您的尝试以及由此引起的任何编译错误,我们将能够更好地为您提供帮助。

相关问题