91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java基礎 (6) - 枚舉

發布時間:2020-07-06 02:43:30 來源:網絡 閱讀:138 作者:lm8751 欄目:編程語言

能解決
1.類或方法強制使用者傳入預設的值
2.性能相對常量更好 - (Android環境除外)

使用辦法
public enum ColorEnum{
WHITE("0x000001"),BLACK("0x000002"),GREEN("0x000003");
private final String color;
private ColorEnum(String color){
this.color = color;
}

public String getColor() {
    return color;
}

 public void setColor(String color) {
 this.color = color;
}

}

和類的區別
枚舉是真正的 final,客戶端不允許創建枚舉類的實例,也不能對其進行拓展
public class Color {
public static final Color WHITE = new Color(),
BLACK = new Color(),
GREEN = new Color();
private Color() { }
}

和常量的區別
1) 無法限制開發員繼承/實現接口. (枚舉是final的構造方法是私有的)
2) 常量作為參數時,是String,int等弱類型,開發員傳入沒有在常量接口里定義的值,這個問題無法通過編譯器發現.
(常量無法 限制開發人員傳入的參數數值,而枚舉可以在編譯階段強制要求開發人員傳入規定數值)
3) 由于開發員可以直接寫常量值, 所以不能用==對比,只能用equals對比,不能優化性能
(枚舉 equals 也會轉化為 == 可參考 https://www.cnblogs.com/xiohao/p/7405423.html )
4) 編譯時,是直接把常量的值編譯到類的二進制代碼里,常量的值在升級中變化后,需要重新編譯所有引用常量的類,因為里面存的是舊值. (常量是裝載的時候放入堆里,如果發生變化,需要重新編譯裝載)

參考:
https://www.cnblogs.com/kailejun/p/6624471.html
https://blog.csdn.net/lishuangling21/article/details/71398925
https://blog.csdn.net/hzy38324/article/details/72566678
Android中枚舉情況:
https://www.cnblogs.com/zgz345/p/5871351.html
Android中枚舉替代方案
https://www.jianshu.com/p/f8ac84a3e3c1

向AI問一下細節
推薦閱讀:
  1. 枚舉
  2. 詳解JAVA枚舉

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

五莲县| 灵寿县| 龙州县| 江津市| 台江县| 仲巴县| 彭山县| 民权县| 平陆县| 衡水市| 重庆市| 镇远县| 进贤县| 屯门区| 扶沟县| 时尚| 微山县| 申扎县| 吉林省| 新丰县| 特克斯县| 樟树市| 汶上县| 南宁市| 威远县| 个旧市| 边坝县| 海丰县| 那坡县| 上饶市| 嘉祥县| 喀喇沁旗| 棋牌| 文昌市| 长乐市| 天等县| 黄冈市| 丹东市| 合水县| 荣成市| 房山区|