列舉類筆記

2021-10-01 21:34:46 字數 1291 閱讀 1024

某些方法所接受的資料必須是在固定範圍之內的,怎麼解決?

方案一:jdk1.5之前,自定義乙個類,私有化建構函式,在自定義類中建立本類的物件對外使用。

方案二:jdk1.5之後,使用列舉類(enum)來解決這種問題。

// 方案一:jdk1.5之前,自定義乙個類,私有化構造方法,在自定義類中建立類的物件,對外使用

class gender

}

enum *** 

},//2.列舉值的資料型別就是列舉值所屬類的型別,它指向了本類的物件。

//2.列舉值 man("男") 與 private static final *** man = new ***("男");相等

man("男")

};string value;// 3.列舉類可以有成員變數

private void sun()

//4.列舉類可以有建構函式,但是修飾符必須是private,預設也是private

private ***(string value)

// 5.列舉類可以存在抽象方法,但是列舉值必須實現抽象方法

public abstract void run();

}

一些方法在執行時,他需要的資料不能是任意的,必須是固定範圍之內的值,jdk1.5後可以直接使用列舉(enum)解決

enum類名

1.

列舉類是乙個特殊的類

2.列舉值預設的修飾符是:

public static final

3.列舉值就是列舉值所屬的類的資料型別,然後列舉值是指向了本類的物件的。

4.列舉類的構造方法的修飾符,預設是

private

5.列舉類可以定義自己的成員變數和成員函式。

6.列舉類可以自定義建構函式,但是修飾符必須是

private

7.列舉類可以存在抽象的方法,但是列舉值必須實現抽象方法

8.列舉值必須要位於列舉類的第乙個語句。

switch適用的資料型別:byte、short、int、char、string、列舉

注意:case

語句後邊跟的列舉值,只需要單寫列舉值即可,不需要再宣告該列舉值是屬於哪個列舉類的。

3.1 案例

public class dome4 

}}// 季節列舉類

enum season

java學習筆記 列舉類

列舉法本質其實就是乙個類 一 常量的使用 public classenumerationelse for inti 0 i a.length i if a i getindex num system.out println 您需要付款 a i getprice num2 列舉法本質就是類,它的構造方...

switch 列舉 關於列舉類的筆記內容

自定義乙個性別類 某些方法所接收的資料必須在固定範圍之內,這時候我們需要自定義乙個類,然後私有化 建構函式,在自定義類建立本類的物件。class gender class person public void setname string name public gender get public ...

列舉類 強列舉

c 11增加了列舉類和列舉結構體。舊的c 列舉型別有乙個壞處是,他們將列舉成員引入周圍的命名空間,導致了名稱衝突 enum esecondcount int esecond 3 與列舉宣告在同乙個作用域 此外,舊的c enum會隱式轉換為int,當我們不預期或不需要這樣的轉換時會導致難以察覺的錯誤 ...