枚举类
1.枚举类的使用场景:
1.一个类需要创建的对象是有限个;
2.需要定义一组常量;
2.枚举类的代码实现:
1 package com.base.enums; 2 3 4 public class SeasonTest { 5 public static void main(String[] args) { 6 //自定义枚举类测试 7 Season spring = Season.spring; 8 System.out.println(spring); // Season{seasonName='春天', seasonDesc='春风拂面'} 9 System.out.println(spring.getSeasonName());// 春天 10 //enum关键字枚举类测试 11 Season1 autumn = Season1.autumn; 12 System.out.println(autumn); // enum的父类重写了toSrping默认打印对象名 autumn 13 14 //enum枚举类实现接口测试 15 System.out.println(autumn.show()); // 秋天到了! 16 17 } 18 } 19 /** 20 * 自定义枚举类 21 */ 22 class Season{ 23 private final String seasonName; 24 private final String seasonDesc; 25 26 private Season(String seasonName, String seasonDesc) { 27 this.seasonName = seasonName; 28 this.seasonDesc = seasonDesc; 29 } 30 31 public static final Season spring = new Season("春天","春风拂面"); 32 public static final Season summer = new Season("夏天","夏日炎炎"); 33 public static final Season autumn = new Season("秋天","秋高气爽"); 34 public static final Season winter = new Season("冬天","寒冬腊月"); 35 36 public String getSeasonName() { 37 return seasonName; 38 } 39 40 public String getSeasonDesc() { 41 return seasonDesc; 42 } 43 44 45 @Override 46 public String toString() { 47 return "Season{" + 48 "seasonName='" + seasonName + '\'' + 49 ", seasonDesc='" + seasonDesc + '\'' + 50 '}'; 51 } 52 } 53 54 /** 55 * 定义枚举类需要实现的接口 56 */ 57 interface Info{ 58 String show(); 59 } 60 /** 61 * enum关键字枚举类 62 */ 63 enum Season1 implements Info{ 64 spring ("春天","春风拂面"){ 65 @Override 66 public String show() { 67 return "春天到了!"; 68 } 69 }, 70 summer("夏天","夏日炎炎"){ 71 @Override 72 public String show() { 73 return "夏天到了!"; 74 } 75 }, 76 autumn ("秋天","秋高气爽"){ 77 @Override 78 public String show() { 79 return "秋天到了!"; 80 } 81 }, 82 winter("冬天","寒冬腊月"){ 83 @Override 84 public String show() { 85 return "冬天到了!"; 86 } 87 }; 88 89 90 91 92 private final String seasonName; 93 private final String seasonDesc; 94 95 private Season1(String seasonName, String seasonDesc) { 96 this.seasonName = seasonName; 97 this.seasonDesc = seasonDesc; 98 } 99 100 101 102 public String getSeasonName() { 103 return seasonName; 104 } 105 106 public String getSeasonDesc() { 107 return seasonDesc; 108 } 109 }

浙公网安备 33010602011771号