C語(yǔ)言中為什么要使用enum

C語(yǔ)言中為什么要使用enum

1 enum是枚舉類型,與整型、浮點(diǎn)型、字符型等都屬于原子類型。

在類里面,為什么用到ENUM呢?何時(shí)需要用到ENUM,希望大神指點(diǎn)我!

1.

java的enum到底有什么用?

1.關(guān)于 Java Enum
Enum 一般用來(lái)表示一組相同類型的常量。如性別、日期、月份、顏色等。

對(duì)這些屬性用常量的好處是顯而易見(jiàn)的,不僅可以保證單例,且比較時(shí)候可以用 ”==” 來(lái)替換 equals 。

是一種好的習(xí)慣。 JDK1.5 之前沒(méi)有 Enum 這個(gè)類型,那時(shí)候一般用接口常量來(lái)替代。有了 JavaEnum 之后,可以更貼近的表示這種常量。
2.?如何使用 Java Enum
簡(jiǎn)單的用法: JavaEnum 簡(jiǎn)單的用法一般用于代表一組常用常量,可用來(lái)代表一類相同類型的常量值。

如:
//性別public?enum?SexEnum?{?male?,?female?;?}//顏色public?enum?Color?{?RED?,?BLUE,GREEN,BLACK?;?}
枚舉對(duì)象里面的值都必須是**的。
可以通過(guò) Enum 類型名直接引用該常量,如 SexEnum.male,Color.RED.
復(fù)雜用法: Java 為枚舉類型提供了一些內(nèi)置的方法,同事枚舉常量還可以有自己的方法。

c++中enum的作用是什么?

枚舉,用來(lái)定義一組數(shù)值類型的常數(shù),讓外界可以通過(guò)名字知道這些常數(shù)的含義比如你寫(xiě)個(gè)函數(shù),返回int,-1代表執(zhí)行失敗,0代表成功,這個(gè)函數(shù)給別人用別人很可能不知道你的定義,但是如果你定義這樣一個(gè)枚舉,然后返回這種枚舉類型,別人看到文字就知道是什么了。

用enum關(guān)鍵字說(shuō)明常量有什么好處?

用enum關(guān)鍵字說(shuō)明常量(即說(shuō)明枚舉常量)有三點(diǎn)好處: (1)用enum關(guān)鍵字說(shuō)明的常量由編譯程序自動(dòng)生成,程序員不需要用手工對(duì)常量一一賦值。 (2)用enum關(guān)鍵字說(shuō)明常量使程序更清晰易讀,因?yàn)樵诙xenum常量的同時(shí)也定義了一個(gè)枚舉類型標(biāo)識(shí)符。

(3)在調(diào)試程序時(shí)通??梢詸z查枚舉常量,這一點(diǎn)是非常有用的,尤其在不得不手工檢查頭文件中的常量值時(shí)。

在《Effective Java》中,為什么推薦使用enum來(lái)實(shí)現(xiàn)單例模式

單例模式實(shí)現(xiàn)方式有很多:在**次使用的時(shí)候創(chuàng)建(構(gòu)造函數(shù)中判斷是否已經(jīng)有實(shí)例存在),在類加載的時(shí)候用靜態(tài)塊兒創(chuàng)建(靜態(tài)塊初始化),在應(yīng)用啟動(dòng)的時(shí)候創(chuàng)建。 在單線程中,基本大同小異,保證類的實(shí)例在整個(gè)應(yīng)用中只有一個(gè),都是沒(méi)問(wèn)題的。

但是在多線程環(huán)境下,什么時(shí)候創(chuàng)建這個(gè)實(shí)例是要考慮線程安全的百科。

枚舉類型**的特點(diǎn)就是:構(gòu)造函數(shù)是private修飾的,也就是不能對(duì)其進(jìn)行new,對(duì)象的實(shí)例都是預(yù)定義的,也就是在類加載的時(shí)候都是定義好了的,不會(huì)給其它調(diào)用去創(chuàng)建實(shí)例的機(jī)會(huì)。