java:简单的计时器使用

时间:2016-03-20 03:16:47

标签: java multithreading timertask seconds

我是编码的初学者,我一直在努力让java计时器每秒重新执行当前时间码。我试过thread.sleep而无法让它工作。我从Youtube的教程中获得了这个代码设置,但它给了我以下错误。感谢。

Error: Main method not found in class timedate, please define the main        method as:
  public static void main(String[] args)

以下是代码。

   import java.util.*;

class timedate extends TimerTask{
   public void run() {

    long s = System.currentTimeMillis() / 1000l;

    final String ANSI_CLS = "\u001b[2J";
    final String ANSI_HOME = "\u001b[H";
    System.out.print(ANSI_CLS + ANSI_HOME);
    System.out.flush();

    double t = s%(60*60*24);
    double b = t%(60*60);

    System.out.println("");
    System.out.println((int)(t/(60*60))%(12)+":"+(int)(b/(60))+":"+(int)(b%(60)));
    System.out.println("");

    }
 }

class mainclass{
   public static void main (String[] args) {
     Timer time = new Timer();
     time.schedule(new timedate(),1000,1000);

     }

  }

1 个答案:

答案 0 :(得分:0)

编译器认为您的主方法位于您的timedate类中,而实际上它位于您的mainclass类中。这可能是因为您在一个文件中有两个单独的类,这在java中是非法的。但是,您可以将timedate类嵌套在mainclass类中,或者为timedate类创建单独的文件,并将该文件导入包含mainclass的文件中。还要将主文件重命名为mainclass.java。我希望这会有所帮助。