Chinaunix首页 | 论坛 | 博客
  • 博客访问: 35580
  • 博文数量: 28
  • 博客积分: 368
  • 博客等级: 一等列兵
  • 技术积分: 270
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-13 17:41
文章分类

全部博文(28)

文章存档

2022年(2)

2020年(3)

2017年(1)

2016年(5)

2015年(1)

2012年(4)

2011年(11)

2010年(1)

我的朋友

分类: Java

2016-09-03 11:36:43

public class enumstudy {
  public static void main(String[] args) {
    //枚举测试1
    System.out.println("------Grade------");
    Grade g = Grade.A;
    System.out.println("g.getValue() = " + g.getValue());
    System.out.println("g.getDescription() = " + g.getDescription());
    System.out.println("g.getMemo() = " + g.getMemo());

    //枚举测试2
    System.out.println("------WeekDay------");
    WeekDay wd = WeekDay.Mon;
    System.out.println("wd.getValue() = " + wd.getValue());
    System.out.println("wd.getDescription() = " + wd.getDescription());
    System.out.println("wd.getMemo() = " + wd.getMemo());

    //枚举常用方法
    System.out.println("------------");
    System.out.println(Grade.A.name());
    System.out.println(Grade.A.ordinal());

    System.out.println("------getValue------");
    g = Grade.valueOf("A");
    System.out.println(g.getValue());

    g = Grade.valueOf(Grade.class, "A");
    System.out.println(g.getDescription());

    System.out.println("------values------");
    Grade[] gs = Grade.values();
    for (Grade gg: gs) {
      System.out.println(" gg.getValue() = " + gg.getValue() + " gg.getDescription() = " + gg.getDescription() + " gg.getMemo() = " + gg.getMemo());
    }
  }
}

//通过构造函数实现枚举类型的属性应用
enum Grade{
  A("优", "100-90", "非常优秀"),B("中", "89-60", "一般"),C("差", "59-0", "比较差");

  private String value;
  private String description;
  private String memo;

  private Grade(String value, String description, String memo) {
    this.value = value;
    this.description = description;
    this.memo = memo;
  }

  public String getValue() {
    return value;
  }

  public String getDescription() {
    return description;
  }

  public String getMemo() {
    return memo;
  }
}

//通过构造函数和抽象方法实现枚举类型的属性应用
enum WeekDay{
  Mon("星期一"){
    public String getDescription() {
      return "星期一描述";
    }
    public String getMemo() {
      return "星期一备注";
    }
  },
  Tues("星期二"){
    public String getDescription() {
      return "星期二描述";
    }
    public String getMemo() {
      return "星期二备注";
    }
  },
  Wed("星期三"){
    public String getDescription() {
      return "星期三描述";
    }
    public String getMemo() {
      return "星期三备注";
    }
  },
  Thur("星期四"){
    public String getDescription() {
      return "星期四描述";
    }
    public String getMemo() {
      return "星期四备注";
    }
  },
  Fri("星期五"){
    public String getDescription() {
      return "星期五描述";
    }
    public String getMemo() {
      return "星期五备注";
    }
  },
  Sat("星期六"){
    public String getDescription() {
      return "星期六描述";
    }
    public String getMemo() {
      return "星期六备注";
    }
  },
  Sun("星期天"){
    public String getDescription() {
      return "星期天描述";
    }
    public String getMemo() {
      return "星期天备注";
    }
  };

  private String value;

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

  public String getValue() {
    return value;
  }

  public abstract String getDescription();
  public abstract String getMemo();
}

阅读(373) | 评论(0) | 转发(0) |
0

上一篇:技术管理牢骚篇-1

下一篇:02-反射学习

给主人留下些什么吧!~~