2017-06-13 33 views
-2

我被要求創建一個存儲立方體三個維度的通用Cuboid類。我必須添加方法來設置和獲取長度,寬度和高度。接下來,添加一個方法public String toString(),該方法將返回所有維度。如何在Eclipse中創建一個通用的Cuboid類?

我在Eclipse中創建了我的類。

public class CuboidDimensions <T> { 


} 

我對這個練習有兩個問題。

1)Cuboid泛型類是否需要public static void main(String [] args)?爲什麼或者爲什麼不? (我真的不明白這一點。)

2)如何編寫方法來設置和獲取上面列出的三個維度?

我仍然很難理解Java時期。我不是Eclipse的粉絲。我更喜歡Netbeans,但我必須爲我的課程使用Eclipse。

+0

通過被要求創建一個通用的Cuboid類,我認爲你必須處理繼承,而不是java泛型。 – drgPP

+0

1)由於您的課程將代表一個對象,因此不需要「主要」方法。 2)在Eclise中,你可以右鍵單擊=> source =>生成getters和setters – SebVb

+0

Eclipse只是一個IDE。它與你正在編寫的代碼無關。您可以在記事本中編寫相同的內容,並在編譯器包含在JDK中的命令行上進行編譯。 – Michael

回答

0

1)如果你的'CuboidDimensions'類是你用來運行程序的類,那麼它需要一個'main(String [] args)'方法。 'main()'方法是你的Java程序運行的地方,並且是調用/創建程序加載時使用的所有對象的方法。如果您的應用程序正在從另一個類運行(即您的其他類中有一個具有'main()'方法),那麼您的'CuboidDimensions'類將不需要'main()'方法。

2)你的set方法將被寫入類似:

public void setLength(float length){ 
    this.length = length; //or whatever- you probably actually want to assign it to some user input taken from the keyboard? 
} 

3)你的get方法將被寫入類似:

public float getLength(){ 
    return length; 
} 

中顯然需要聲明的全局變量的爲每個維度做類似這樣的事情。

+0

你設置的方法很混亂。你不是分配給班級的任何領域。你也忽略了傳入的任何參數。我期望它看起來像'public void setLength(float length){this.length = length; }' – Michael

+0

你是對的重新分配'長度'變量 - 答案更新。然而,我在我的答案的最後一句中提到,需要在課堂上聲明全局變量才能做到這一點。 OP沒有顯示他們的類的任何實現,所以我們不知道他們聲明瞭什麼變量...... – someone2088

+0

Java中沒有全局變量這樣的事情。你的意思是一個領域。即使該字段已存在,您的設置方法也無法工作,因爲該參數會[遮蔽字段](https://en.wikipedia.org/wiki/Variable_shadowing)。但現在一切都很好:) – Michael

0

Eclipse編寫自己設置和獲取的方法。只要去源代碼 - 生成吸氣和安裝程序

+0

謝謝!這非常有幫助! –

相關問題