public Car{
public enum Color{RED,BLUE};
private Color color;
Car(Car.Color c)
{
this.color =c
}
}
這是正確的方法嗎?在一個類中使用枚舉?
public Car{
public enum Color{RED,BLUE};
private Color color;
Car(Car.Color c)
{
this.color =c
}
}
這是正確的方法嗎?在一個類中使用枚舉?
看起來沒問題。
你還有什麼其他的選擇?
沒錯,沒關係。你也可以向私有成員公開一個getter。所以其他班級可以看到汽車的顏色。
這是很有可能的顏色不需要暴露。使枚舉公開,以便任何調用者可以將實例傳遞給構造函數仍然有意義。一般而言,任意暴露的信息越少,類設計越強大。 – 2010-08-18 07:06:37
Jep,看起來不錯。
它是正確的。 儘管我將枚舉保留在一個單獨的文件Color.java中,因爲它非常通用。
我也會重命名枚舉以避免與'java.awt.Color'發生衝突 – 2010-08-18 08:56:33
你可以在一個類中放入一個enum
,就像你可以在類中創建另一個類(這將是一個nested class,如果它不是靜態的,它是一個內部類)。
相關:http://stackoverflow.com/questions/3363120/enumerations-why-when/3363326#3363326 – polygenelubricants 2010-08-18 10:19:10