枚举

我是菜鸟下面自己写的东西只供自己理解,Mark低自己噶学习experience。

枚举就是Java 中里面的一个特殊 的类,通常在练习的时候我比较喜欢用JUnit来运行代码,不用main()入口

今天主要就学了枚举, 自己听完一个短短30分钟后的视频 自己写了一个输出星期一至星期天的代码,发现要通过 自己思考写出来的东西才会去理解 的,如果只是简单的把视频里面的代码敲完就算,自己不用例子来检验,这样成长得好慢。下面的代码是教学里面的,没有实际业务意义。只是让你了解了解一下枚举是什么东西。

枚举里面比较注意的就是枚举的属性是私有的是public static final的,构造器是私有的(为了不让外界随便产生新的枚举对象),然后方法用的是abstract。

package itcast;


import org.junit.Test;


public class enumeration2 {

@Test
public void test(){
print(Grade.A);
}

public void print(Grade g){
String value = g.localeValue();
System.out.println(value);
}
@Test
//测试枚举的常用 方法 
public void test2(){
System.out.println(Grade.C.name());
System.out.println(Grade.C.ordinal());

String str  = "B";
// Grade g = Grade.valueOf(Grade.class, str);
Grade g = Grade.valueOf(str);
System.out.println(g);
}
/*
class Grade{
private Grade(){}
public static final Grade A = new Grade();
public static final Grade B = new Grade();
public static final Grade C = new Grade();
public static final Grade D = new Grade();
public static final Grade E = new Grade();
}*/
//带抽象方法的枚举

enum Grade{//class A("100-90"),B("89-80"),C("79-70"),D("69-60")不及格,
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("60-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();
}

}

让console输出周一到周日,写枚举的时候步骤

1:枚举类

2:确认周一至周日的也就是标识符,Java中可以理解为Object

3:私有属性

4:私有构造器

5:公有方法,给外界获取标识符里面的内容

以下是代码:

package itcast;


import org.junit.Test;


public class testWeekDay {

@Test
public void testDay(){
for(WeekDay day : WeekDay.values()){
System.out.println(day.getValue());
}
}

enum WeekDay{
MON("星期一"),TUE("星期二"),WED("星期三"),
THU("星期四"),FRI("星期五"),SAT("星期六"),
SUN("星期天");

private String value;
private WeekDay(String value){
this.value = value;
}

public String getValue(){
return value;
}
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值