1

我正在尝试创建一个计时器,并且据我所知,它涉及使用未附加到任何 jbutton 等的动作侦听器。问题是,我不明白如何执行此操作。关于计时器的 java 文档说要做:

package testing;

import java.awt.event.ActionListener;

public class timer{
int delay = 1000; //milliseconds
  ActionListener taskPerformer = new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
          //...Perform a task...
       }
 }; //line with the error
  new Timer(delay, taskPerformer).start(); 
}

,但是每当我这样说语法错误:,<预期......有人可以向我解释我做错了什么,以及如何解决它?- 一个java菜鸟

编辑:完整的错误信息是Syntax error on token ";", < expected

4

1 回答 1

2

您似乎new Timer(delay, taskPerformer).start();在它不属于的构造函数或方法之外有代码。目前,它在课堂上赤身裸体,在一个只允许变量声明的位置。将该代码放入构造函数中。还要重命名您的类,使其以大写字母开头,因此将遵循 Java 命名约定:

import java.awt.event.ActionListener;

// rename class to begin with an uppercase letter
public class MyTimer{
int delay = 1000; //milliseconds
  ActionListener taskPerformer = new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
          //...Perform a task...
       }
 }; 

 public MyTimer() {
   // the code below is now happily placed inside of your class's constructor.
   new Timer(delay, taskPerformer).start(); 
 }

}
于 2013-09-24T00:30:22.477 回答