实例一:
public enum OrderOption {
ASC,
DESC;
}
实例二(带参数构造函数):
public enum OrderOption {
ASC("ASC"),
DESC("DESC");
String type;
OrderOption(String type){
this.type = type;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}
实例三(枚举公共方法):
public static void main(String[] args) {
System.out.println(SeasonEnum.getSeason("spring"));
}
public enum SeasonEnum {
spring, summer, autumn, winter;
public static SeasonEnum getSeason(String position) {
if ("spring".equals(position)){
return spring;
}else if("summer".equals(position)){
return winter;
}else if("autumn".equals(position)){
return autumn;
}else{
return winter;
}
}
}
实例四(带抽象方法的枚举):
public static void main(String[] args) {
System.out.println(OrderState.A.aaa());
}
public enum OrderState {
A{
public String aaa(){
return "优";
}
},
B{
public String aaa(){
return "良好";
}
},
C{
public String aaa(){
return "及格";
}
};
public abstract String aaa();
}
实例五(综合实例):
enum Grade{//class
A("100-90"){
public String localeValue(){
return "优";
}
},
B("89-80"){
public String localeValue(){
return "良";
}
},
C("79-70"){
public String localeValue(){
return "一般";
}
},
D("69-60"){
public String localeValue(){
return "差";
}
},
E("59-0"){
public String localeValue(){
return "不及格";
}
};//Object
private String value; //封装每个对象对应的分数
private Grade(String value){
this.value = value;
}
public String getValue(){
return this.value;
}
public abstract String localeValue();
}
记住:枚举中的抽象方法,在创建枚举的对象的时候要实现抽象方法。
测试:
[java]
package com.feng.myemu;
import org.junit.Test;
public class Demo1 {
@Test
public void test(){
print(Grade.B);
}
public void print(Grade g){
String value = g.localeValue();
System.out.println(value);
}
}
本文详细介绍了Java中枚举的用法,包括无参数构造函数、带有参数的构造函数、枚举公共方法、带有抽象方法的枚举以及综合实例。每个示例都展示了如何定义和使用枚举,还包含一个测试用例来验证枚举功能的实现。
946

被折叠的 条评论
为什么被折叠?



