0

我需要设计一个名为 Time 的类。该类需要包含:

■ 表示时间的数据字段时、分和秒。

■ 为当前时间创建时间对象的无参数构造函数。(数据字段的值将代表当前时间。)

■ 构造一个Time 对象的构造函数,该对象具有从1970 年1 月1 日午夜开始经过的指定时间(以毫秒为单位)。(数据字段的值将代表这次。)

■ 构造具有指定小时、分钟和秒的Time 对象的构造函数。

■ 分别为数据字段小时、分钟和秒提供三种get 方法。

■ 一个名为 setTime(long elapseTime) 的方法,它使用经过的时间为对象设置新时间。

对于此任务,我创建了以下代码:

public class Time{
   private int hour;
   private int minute;
   private int second;

   public Time(){
     this(System.currentTimeMillis());
   }

   public Time(long elapseTime){
     long totalSeconds = elapseTime / 1000L;
     this.second = (int)(totalSeconds % 60L);
     long totalMinutes = totalSeconds / 60L;
     this.minute = (int)(totalMinutes % 60L);
     int totalHours = (int)(totalMinutes / 60L);
     this.hour = (totalHours % 24);
   }

   public String toString() {
     return this.hour + ":" + this.minute + ":" + this.second + " GMT";
   }

   public int getHour() {
     return this.hour;
   }

   public int getMinute() {
     return this.minute;
   }

   public int getSecond() {
     return this.second;
 }
}

它编译得很好,但是当我运行它时会弹出一个对话框,上面写着“文件中没有找到主要方法、小程序或 MIDlet”。显然我的主要方法不对,但我似乎无法修复它,因为我尝试过的一切只会产生更多错误。如果有人可以建议更改以使我的代码正常工作,我将不胜感激。

编辑:是的,我原来是这样的:

 public class Time{
  public static void main(String args[]){...

但这有大约一百万个错误。似乎我有它的肉,但不是基本的开始。

4

2 回答 2

0

您没有发布您的主要方法,但在 java 中它必须如下所示:

public static void main(String[] args) {
    /* Create time and it will pass */
}

每个java程序都需要一个main方法,否则程序无法启动。

于 2013-07-24T20:12:07.817 回答
-1

您要么需要 Time 类中的 main 方法,要么需要一个单独的类(即“TimeTester”),如下所示:

public class TimeTester {

  public static void main(String[] args) {

    // Test the default constructor
    Time time = new Time();

    System.out.println("time = " + time);
    System.out.println("time.toHour() " + time.toHour());
    // etc..

    // Test with a supplied value
    Time time2 = new Time(12033312L);
    System.out.println("time2 = " + time2); 
    // etc..
   }
}
于 2013-07-24T20:46:17.143 回答