zoukankan      html  css  js  c++  java
  • Enum枚举学习- java5之前和之后的写法

    enum枚举

    JDK1.5以前枚举的写法

    /**
     * java5.0以前,定义枚举类。类中的对象是有限的
     * @author amber
     *
     */
    public class Season {
        private final String seasonName;
        private final String seasonDescription;
        
        private Season(String seasonName, String seasonDescription) {
            this.seasonName = seasonName;
            this.seasonDescription = seasonDescription;
        }
    
        public String getSeasonName() {
            return seasonName;
        }
    
        public String getSeasonDescription() {
            return seasonDescription;
        }
        
        //定义枚举对象
        public static final Season SPRING = new Season("春天", "春意盎然");
        public static final Season SUMMER = new Season("夏天", "夏日炎炎");
        public static final Season AUTUMN = new Season("秋天", "秋风习习");
        public static final Season WINTER = new Season("冬天", "白雪皑皑");
    
        @Override
        public String toString() {
            return "Season [seasonName=" + seasonName + ", seasonDescription=" + seasonDescription + "]";
        }
    }

    java5以后枚举的写法

    /**
     * java5.0以后,定义枚举类。类中的对象是有限的
     * @author amber
     *
     */
    public enum Season1 {
        //定义枚举对象.需要把对象放在第一行
        SPRING ("春天", "春意盎然"){
            @Override
            public void show() {
                System.out.println("This is Spring!");
            }
        },
        SUMMER ("夏天", "夏日炎炎"),
        AUTUMN ("秋天", "秋风习习"),
        WINTER ("冬天", "白雪皑皑");
        
        private final String seasonName;
        private final String seasonDescription;
        
        private Season1(String seasonName, String seasonDescription) {
            this.seasonName = seasonName;
            this.seasonDescription = seasonDescription;
        }
        public void show() {
            System.out.println("This is Season!");
        }
        public String getSeasonName() {
            return seasonName;
        }
    
        public String getSeasonDescription() {
            return seasonDescription;
        }
        @Override
        public String toString() {
            return "Season [seasonName=" + seasonName + ", seasonDescription=" + seasonDescription + "]";
        }
    }

    区别:

    使用enum的时候

    类对象必须放在第一行,分号改成逗号。最后一个对象用分号。并且把原来的

    public static final Season SPRING = new Season("春天", "春意盎然");只留下有背景颜色的部分。

  • 相关阅读:
    Unity C# 反编译
    java finalize方法总结、GC执行finalize的过程
    Android性能调优篇之探索垃圾回收机制
    深入理解JVM(一)——JVM内存模型
    Android性能调优篇之探索JVM内存分配
    HashMap实现原理分析
    [干货]2017已来,最全面试总结——这些Android面试题你一定需要
    2017年最全的30个Android面试题,你将如何回答?
    Android2017进阶知识点、面试题及答案(精选版)
    Android2017最新面试题(3-5年经验个人面试经历)
  • 原文地址:https://www.cnblogs.com/amberbar/p/9882908.html
Copyright © 2011-2022 走看看