首页 文章

显示名为Time的类 . (帮助排除代码)

提问于
浏览
0

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

■表示时间的数据字段小时,分钟和秒 .

■一个无参数构造函数,用于为当前时间创建Time对象 . (数据字段的值将代表当前时间 . )

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

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

■数据字段分别为小时,分钟和秒的三种获取方法 .

■名为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[]){...

但那有大约一百万个错误 . 看来我有它的肉,但不是基本的开端 .

2 回答

  • -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..
       }
    }
    
  • 0

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

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

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

相关问题