package cn.enum.robertchao;
public enum color
1、可以通過「列舉.內容」的形式進行取值操作。
2、輸出列舉中的全部內容,可以使用foreach完成。
利用foreach把列舉型別中的內容全部取出。
package cn.enum.robertchao;
public class foreachenum
} }
3、enum類 和 enum關鍵字 。
使用enum關鍵字定義的列舉類,就相當是乙個子類,父類是enum類。
enum類中定義了下面幾個方法:
方法名稱
描述public enum(string name;int ordinal)
只能被其子類訪問,此構造方法為自動呼叫
public final string name()
列舉的名字
public final int ordinal()
列舉的序號
上述構造方法完全與name和ordinal有關
所以這個類的構造方法,在enum每次定義列舉型別的時候,實際上都會自動呼叫構造
4、類集對列舉的支援(enumset、enummap類)。
① enummap是map介面的子類,可以存放一對內容。
`enummap也是可以存放一對內容的。`
舉例:
enummapmap
= new enummap(color.class);
map.put(color.red,"紅色");
system.out.println(map.get(color.red));
② enumset是set介面的子類。
enumset.allof();表示將列舉的全部內容設定到集合之中。
enumset.noneof();表示set集合中只能是列舉內容,但不包含列舉中的具體內容。
舉例:
enumsetset = new enumset.allof(color.class);
for(color x : set)
讓列舉實現介面
在列舉操作中,乙個列舉類是允許實現多個介面的。
但是
要求此時列舉中的每個物件都必須單獨各自覆寫介面中的抽象方法。
舉例:
package cn.com.rebortchao;
inte***ce info
poublic enum color implements info
}, green
}, blue
};}
測試一下上述列舉類對介面的引用。
package cn.com.rebortchao;
public class test
}}
在列舉中實現抽象方法
package cn.com.rebortchao;
poublic enum color
}, green
}, blue
}; public abstart string getcolor();
}
和繼承介面有些大同小異。
java 新特性 列舉
列舉就是要某個型別的變數的取值只能是幾個固定值中的某乙個,否則,編譯器就會報錯,列舉可以讓編譯器在編譯時就可以控制程式中填寫的非法值,普通變數的方式無法實現這一目標 列舉的實現 package learn 列舉 author hui public class enumtest 在上面的類中,自己定義...
java新特性 列舉 註解
一 列舉 1.首先列舉中在jdk1.5以後才有的。基於列舉的開發 2.enum類 enum類是enum類的父類,enum其實質就相當於是class類。在enum類中有如下三個方法 1 構造方法 protected enum string name,int ordinal 2 取得列舉名字 publi...
java新特性 萬用字元
在程式類中追加了泛型之後,避免了classcastexception的問題,同時又產生了引數統一化的問題。為了解決該問題,產生了新特性萬用字元,可以接受所有的泛型型別,但不能讓使用者隨意更改。該特性從jdk1.5之後出現。有以下三種常見的萬用字元 extends number 表示泛型型別只能是nu...