常量和列舉 常量類的區別

2021-08-21 15:45:49 字數 795 閱讀 1768

一、實體常量類

/**

* 實體常量類

* @author administrator

* @date 2018/7/21

*/public class constclass

1、jdk編譯時,直接把常量編譯到使用的地方。在修改變數值後,其它類有可能會出現編譯到舊常量值的問題。

2、只能用equals比較,效能較低。無法保證型別是否合法,限定型別值。

3、如果使用了private,限定了只能當前類的擁有者才可以修改,如果使用public,則子類可以繼承修改,父類並不知情

二、內部常量類

/**

* 實體常量類

* @author administrator

* @date 2018/7/21

*/public class constclass

1、jdk編譯時,直接把常量編譯到引用類地方。

2、可以使用==進行比較,提高效率。

三、列舉

/**

* 列舉

* @author administrator

* @date 2018/7/21

*/public enum enumclass

private int value;

public int getvalue()

}

1、型別限定,效能較高,推薦使用。

2、列舉構造方法是私有的,無法繼承修改,預設私有化無參構造方法,可用於列舉單例

指標常量和常量指標的區別

1 指標常量 顧名思義它就是乙個常量,但是是指標修飾的。格式 int const p 指標常量例 int a,b int const p a 指標常量 那麼分為一下兩種操作 p 9 操作成功 p b 操作錯誤,指標p將一直指向a,不能再指向b因為宣告了指標常量,p代表乙個指標位址,因此指標變數不允許...

常量指標和指標常量的區別

常量指標 如果在定義指標變數的時候,資料型別前用const修飾,被定義的指標變數就是指向常量的指標變數,指向常量的指標變數稱為常量指標,格式如下。const int p a 常量指標例項 int a,b const int p a 常量指標 那麼分為以下兩種操作 p 9 操作錯誤 p b 操作成功指...

列舉與常量

目錄 先介紹一下兩者的區別 1 常量就是乙個值 列舉是一組不變的值 2 列舉是自己定義後再使用,有一定的約束 常量可以隨便定義 3 列舉傳入的值是固定的值不會出錯,常量是乙個值,傳遞的引數是任意的 4 限制使用者不能隨意賦值,只能在列舉的值中選擇,不需要死記每乙個值,只需要選擇相應的值 列舉的優點 ...