2013-07-24 16 views
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的在文件中「。顯然,我的主要方法是不正確的,但我似乎無法修復它,因爲我試過的一切都會造成更多的錯誤。如果任何人都可以建議更改以使我的代碼正常工作,我將不勝感激。

編輯:是的,我orginally有它正是如此:

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

但有一百萬個錯誤。看起來我有它的肉,但不是基本的開端。

+0

我不是在代碼看到一個main方法... – StephenTG

+1

這是一個有效的班級。並不是每個班級都可以獨立運行。如果需要,用'public static void main(String [] args)'創建另一個類並在該主方法中測試Time類。 – hexafraction

+0

所以你自己寫了上面的代碼,但是你不知道如何編寫主要的方法。 –

回答

-1

你要麼需要在Time類這樣的主要方法,或者一個單獨的類(即「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

謝謝你的幫助。 –

0

你不發表您的主要方法,但在java中它看起來像這樣:

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

每一個Java程序需要一個main方法,否則該程序無法啓動。