整理Effective Java書中Item 36: Use EnumSet instead of bit fields心得筆記
主旨
在 Java 裡,用 int
或 long
表示多種布林選項的做法已經過時了,這種設計方式可讀性差又容易出錯。現在有更好的選擇 —— EnumSet
。它不但語意清楚、效能高,而且更安全、好維護。
整理Effective Java書中Item 36: Use EnumSet instead of bit fields心得筆記
在 Java 裡,用 int
或 long
表示多種布林選項的做法已經過時了,這種設計方式可讀性差又容易出錯。現在有更好的選擇 —— EnumSet
。它不但語意清楚、效能高,而且更安全、好維護。
整理Effective Java書中Item 35: Use instance fields instead of ordinals心得筆記
雖然 enum.ordinal()
這個方法看起來很方便,可以讓你直接取得列舉常數的順序編號,但實際上使用它來表示邏輯意義是非常危險的作法。這一則要點告訴我們:如果你需要用 enum 來代表某種數值或邏輯資訊,應該用實例欄位來明確定義,而不要依賴 ordinal() 的數字順序。