在 JavaFx 中创建计时器

Mohammad Irfan 2023年10月12日
  1. 在 JavaFX 中创建计时器
  2. 结论
在 JavaFx 中创建计时器

在 Java 中,可能需要稍后或延迟执行某些计划任务。我们将通过在 Java 代码中添加一个计时器来执行此操作。

要将计时器添加到代码中,我们将使用 java.util 包中的 Timer 类和 TimerTask 类。

要使用 java.util.Timer 类,我们首先需要导入它。为此目的,使用 import 关键字后跟所需的类。

import java.util.Timer;

同样,要使用 TimerTask 类,我们首先需要导入它。为此,我们使用 import 关键字后跟所需的类。

我们在 Java 项目中导入 java.util.TimerTask 类。

import java.util.TimerTask;

我们想安排一个简单的任务,在 5 秒内打印 Hello World 消息。

让我们看一下执行此操作的代码,然后是对给定代码的逐节解释以及输出。

在 JavaFX 中创建计时器

在这个例子中,我们首先导入 TimerTimerTask 类,然后在 main() 方法中,我们创建 Timer 类的对象和匿名内部类来执行任务。

由于 TimerTask 类实现 Runnable 接口,我们重写 run() 方法来执行任务,然后使用 schedule() 方法。

我们运行任务。schedule() 方法有两个参数,第一个是任务对象,第二个是延迟时间。

请参见下面的示例。

import java.util.Timer;
import java.util.TimerTask;

public class SimpleTesting {
  public static void main(String[] args) {
    Timer timer = new Timer();
    TimerTask task = new TimerTask() {
      public void run() {
        // The task you want to do
        System.out.println("Hello World");
      }
    };
    timer.schedule(task, 5000l);
  }
}

输出:

Hello World

调度任务的主要部分是使用 Timer 类的 timer.schedule() 方法执行的。该函数的签名如下:

public void schedule(TimerTask task, long delay)

它安排指定的任务在指定的延迟后执行。

参数是 task,scheduled 和 delay,执行前的延迟毫秒数。

如果延迟为负,则它抛出的可能异常为 IllegalArgumentException,或者 delay + System.currentTimeMillis() 为负。

IllegalStateException,如果任务已被安排或取消,定时器被取消,或定时器线程终止,NullPointerException 如果任务为空。

我们编写 timer.schedule(task, 5000l) 来调度任务,第一个参数是之前定义的任务对象,第二个参数是需要的延迟。

由于我们需要 5 秒的延迟,等于 5000 毫秒,我们将 5000l 作为第二个参数传递。

l 表示长数据类型。因此,Hello World 消息会在 5 秒或 5000 毫秒的延迟后打印在输出中。

我们可以通过将 print 语句替换为所需的语句来执行更复杂的任务。

结论

在本主题中,我们学习了如何在 Java 程序中添加一个计时器,以安排一个简单的打印任务,让我们了解如何将这个概念应用到实际用例中。

相关文章 - Java JavaFx

相关文章 - Java Timer