[英]Declare enum variable in Java bean
我需要將一個枚舉變量聲明為一個類成員,並且需要像java bean一樣為它定義一個setter和getter。 像這樣的東西 -
public class Vehicle {
private String id;
private String name;
enum color {
RED, GREEN, ANY;
}
// setter and getters
}
現在,我想將color屬性設置為紅色,綠色或任何其他類,並希望相應地做出決定。
enum必須公開以供外界看到:
public class Vehicle {
private String id;
private String name;
public enum Color {
RED, GREEN, ANY;
};
private Color color;
public Color getColor(){
return color;
}
public void setColor(Color color){
this.color = color;
}
}
然后從包外面你可以做:
vehicle.setColor(Vehicle.Color.GREEN);
如果您只需要在與Vehicle
相同的包中使用Vehicle.Color,則可以從enum
聲明中刪除public
。
如果你想使用你的color
枚舉,你必須比你正在做的更廣泛地分享它的聲明。 最簡單的可能是將public
放在車輛中的enum color
前面。
接下來,您需要聲明枚舉類型的字段。 我建議你將枚舉的名稱從color
改為Color
,因為它基本上都是一個類。 然后你可以聲明一個字段: private Color color
和你的其他字段。
要使用枚舉,尤其是來自另一個類的常量,您需要知道枚舉嵌套在Vehicle中。 您需要限定所有名稱,因此:
Vehicle.Color myColor = Vehicle.Color.RED;
Bakkal親切地編寫了代碼來展示我所談論的內容。 詳情請見他的回答!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.