第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

enum是什么? 為什么有它? 怎么用?

enum是什么? 為什么有它? 怎么用?

寶慕林4294392 2019-03-01 11:04:53
實際現(xiàn)象 enum的基本會用, 但想追本溯源( 探討下本質(zhì) ) 預期現(xiàn)象 拒絕教條式的摘抄文檔式的回答(時間重要) 求對enum深刻的認識(至少在實際生產(chǎn)環(huán)境中寫過很多代碼) ! 注: 我不是編程初學者, 一些初級概念無需科普 上下文環(huán)境 討論的對象, 為Java中的enum( 其實enum是一種概念 ) 具體地, 是討論enum 這個關(guān)鍵字
查看完整描述

7 回答

?
慕村225694

TA貢獻1880條經(jīng)驗 獲得超4個贊

  1. 可以用來代替定義類型常量 ,比如 訂單狀態(tài),證件類型等,保證類型安全
    比如用普通的String類表示訂單狀態(tài),調(diào)用方可以傳一個不在訂單狀態(tài)范圍內(nèi)的String給被調(diào)用方,這種錯誤在編譯階段不能發(fā)現(xiàn)

  2. java枚舉類本質(zhì)是一個多例模式實現(xiàn),單例模式是多例模式的一個特例

  3. 枚舉類不能繼承,比如enumA extends enumB不行

  4. 一個枚舉類 內(nèi)部類型有順序(order) 實現(xiàn)了 Comparable接口

查看完整回答
反對 回復 2019-03-01
?
揚帆大魚

TA貢獻1799條經(jīng)驗 獲得超9個贊

Effective Java 第6章有詳細的解釋,可以去看看

查看完整回答
反對 回復 2019-03-01
?
慕桂英4014372

TA貢獻1871條經(jīng)驗 獲得超13個贊

可以簡單把enum看成一個有備注信息的int類型。

查看完整回答
反對 回復 2019-03-01
?
汪汪一只貓

TA貢獻1898條經(jīng)驗 獲得超8個贊

被你的條件嚇到了,我就說一點我個人的想法

enum可以看做一種特殊的class,包含一些訪問性公開的常量,其實作為訪問性公開的常量來說,在類加載過程中已經(jīng)被解析到常量池,enum只是從語義的角度使用戶可以更方便地在使用常量時展示常量的含義。同時也方便了常量的構(gòu)造,循環(huán)遍歷某一類型的所有常量,在switch語句中使用等等。

查看完整回答
反對 回復 2019-03-01
?
智慧大石

TA貢獻1946條經(jīng)驗 獲得超3個贊

這個題目太泛,不太好回答。
enum本質(zhì)上是一個繼承了java.lang.Enum的class,可以用在單例和需要限定輸入的地方

查看完整回答
反對 回復 2019-03-01
?
牧羊人nacy

TA貢獻1862條經(jīng)驗 獲得超7個贊

先說說自己個人的膚淺的主觀的理解, 拋磚引玉.

我覺得 enum 出現(xiàn)的目的是:

  • 提供一種管理常量的手段,

  • 一種命名空間.

查看完整回答
反對 回復 2019-03-01
?
明月笑刀無情

TA貢獻1828條經(jīng)驗 獲得超4個贊

enum的存在本身就是為了解決常量的可讀性的問題,在沒有enum之前,標記一種狀態(tài),常使用int類型,其1,2之類的可讀性不是很好,而且新增一個常量要寫一個長長語句,為了解決這一系列問題在jdk5就加上了這個功能。其本質(zhì)就是一個類,只不過在創(chuàng)建enum的時候,會自動生成values()、ordinal()等方法,并且支持了switch語句,覆蓋了常量會出現(xiàn)的場景,比直接定義常量要方便使用。

查看完整回答
反對 回復 2019-03-01
  • 7 回答
  • 0 關(guān)注
  • 1039 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號