靜態常量是列舉模式的應用
它有很多缺點:型別不安全(靜態常量可以隨意增加使用或操作),無命名空間,脆弱(某常量值改變後客戶端如果不編譯仍能使用,但表現卻是未定義的),靜態常量列印值為數字,也不具提示性等等
客戶端未編譯有待推敲?
this pattern has many problems, such as:
脆弱性的理解在這裡比如是靜態常量,修改了,插入或者增加,客戶端必須得重新編譯來適應新的變化,而列舉的話則不必,比如它可以通過遍歷來囊括所有新的變化,客戶端**可以不用改變,這就是用靜態常量脆弱性的體現。
列舉與常量
目錄 先介紹一下兩者的區別 1 常量就是乙個值 列舉是一組不變的值 2 列舉是自己定義後再使用,有一定的約束 常量可以隨便定義 3 列舉傳入的值是固定的值不會出錯,常量是乙個值,傳遞的引數是任意的 4 限制使用者不能隨意賦值,只能在列舉的值中選擇,不需要死記每乙個值,只需要選擇相應的值 列舉的優點 ...
常量與列舉型別
常量的使用需要注意以下幾點 1 常量需要在型別關鍵字之前加上 const 表示是關鍵字。const 本身就是常量的意思 2 常量中的所有的字母全部都是大寫,而且定義的名字必須要有一定的意義,做到 見名知意 如 pi 3 常量在定義時,就必須初始化 即,給出初始值 列舉型別的定義需要注意的幾點要求。1...
列舉與靜態final
列舉由於靜態final,因為前者比後者更安全。如下 enum shapetype public class exptst 執行輸出 null rectangle再看使用靜態final的例子 class shapetype public class exptst 注意到此時type可以為乙個意想不到的...