Java enum类型笔记

用途:

定义命令行参数,菜单选项,星期,方向(东西南北)等


 

与普通类的不同

有默认的方法 value()
每个enum类都已默认继承java.lang.Enum,所以enum类不能继承其他类
构造方法默认是package-private或private,会自动创建预定义的常量,所以你不需要也不能调用构造方法。

例子:

星期

1 public enum Weekend {
2     SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY;
3     
4     public static void main(String[] args) {
5         for (Weekend day : Weekend.values()) {
6             System.out.println(day);
7         }
8     }
9 }

方向

 1 public enum Direction {
 2     EAST("d"), WEST("a"), SOUTH("s"), NORTH("w"); // 用键盘上的wasd键代表方向
 3 
 4     private String key;
 5 
 6     private Direction(String key) {
 7         this.key = key;
 8     }
 9 
10     public String getKey() {
11         return key;
12     }
13 
14     public static void main(String[] args) {
15         for (Direction d : Direction.values()) {
16             System.out.println("direction map:" + d.getKey());
17         }
18     }
19 
20 }

参考链接:

https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html

https://docs.oracle.com/javase/8/docs/api/

posted @ 2018-08-29 16:14  翡翠绿  阅读(282)  评论(0编辑  收藏  举报