enum枚举

JDK1.5以前枚举的写法

  1. /**
  2. * java5.0以前,定义枚举类。类中的对象是有限的
  3. * @author amber
  4. *
  5. */
  6. public class Season {
  7. private final String seasonName;
  8. private final String seasonDescription;
  9.  
  10. private Season(String seasonName, String seasonDescription) {
  11. this.seasonName = seasonName;
  12. this.seasonDescription = seasonDescription;
  13. }
  14.  
  15. public String getSeasonName() {
  16. return seasonName;
  17. }
  18.  
  19. public String getSeasonDescription() {
  20. return seasonDescription;
  21. }
  22.  
  23. //定义枚举对象
  24. public static final Season SPRING = new Season("春天", "春意盎然");
  25. public static final Season SUMMER = new Season("夏天", "夏日炎炎");
  26. public static final Season AUTUMN = new Season("秋天", "秋风习习");
  27. public static final Season WINTER = new Season("冬天", "白雪皑皑");
  28.  
  29. @Override
  30. public String toString() {
  31. return "Season [seasonName=" + seasonName + ", seasonDescription=" + seasonDescription + "]";
  32. }
  33. }

java5以后枚举的写法

  1. /**
  2. * java5.0以后,定义枚举类。类中的对象是有限的
  3. * @author amber
  4. *
  5. */
  6. public enum Season1 {
  7. //定义枚举对象.需要把对象放在第一行
  8. SPRING ("春天", "春意盎然"){
  9. @Override
  10. public void show() {
  11. System.out.println("This is Spring!");
  12. }
  13. },
  14. SUMMER ("夏天", "夏日炎炎"),
  15. AUTUMN ("秋天", "秋风习习"),
  16. WINTER ("冬天", "白雪皑皑");
  17.  
  18. private final String seasonName;
  19. private final String seasonDescription;
  20.  
  21. private Season1(String seasonName, String seasonDescription) {
  22. this.seasonName = seasonName;
  23. this.seasonDescription = seasonDescription;
  24. }
  25. public void show() {
  26. System.out.println("This is Season!");
  27. }
  28. public String getSeasonName() {
  29. return seasonName;
  30. }
  31.  
  32. public String getSeasonDescription() {
  33. return seasonDescription;
  34. }
  35. @Override
  36. public String toString() {
  37. return "Season [seasonName=" + seasonName + ", seasonDescription=" + seasonDescription + "]";
  38. }
  39. }

区别:

使用enum的时候

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

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

Enum枚举学习- java5之前和之后的写法的更多相关文章

  1. Rhythmk 一步一步学 JAVA (18): Enum枚举学习

    枚举定义: public enum SizeEnum { SMALL, BIG, BIGEST }; public enum SizeStringEnum { SMALL("小") ...

  2. MVC3不能正确识别JSON中的Enum枚举值

    一.背景 在MVC3项目里,如果Action的参数中有Enum枚举作为对象属性的话,使用POST方法提交过来的JSON数据中的枚举值却无法正确被识别对应的枚举值. 二.Demo演示 为了说明问题,我使 ...

  3. Java中的enum枚举类

    首先说说为什么要写这个enum枚举类吧,是群里有个新手问:怎样把enum类中的值遍历得到,其实自己用的也很少.自己也是确实不知道,于是我去网上搜了不少,总结了些,希望对大家有帮助:首先我说说怎样遍历枚 ...

  4. Swift Enum 枚举

    前言 枚举是一种自定义的数据类型,在 Swift 中枚举类型拥有相当高的自由度.在 Swift 语言中枚举是一级类型,它拥有在其他语言中只有类才拥有的一些特性,比如实例方法,实例构造器等. 枚举声明的 ...

  5. C++之enum枚举量声明、定义、使用与枚举类详解

    C++之enum枚举量声明.定义.使用与枚举类详解 学习一个东西,首先应该指导它能做什么,其次去知道它怎么去做,最后知道为什么去这么做. 知其然知其所以然.不能冒进 ,一步一步的慢慢来.

  6. 简单认识java enum枚举

    什么是枚举 枚举是java5中新增的特性,他是一个特殊的数据类型,他的特殊性在于他既是一种类类型,又比类类型多了安全性,简洁性,便捷性.java枚举类型是功能十分强大齐全的类,功能比其他语言中的对等物 ...

  7. c# (ENUM)枚举组合类型的谷歌序列化Protobuf

    c# (ENUM)枚举组合类型的谷歌序列化Protobuf,必须在序列化/反序列化时加上下面: RuntimeTypeModel.Default[typeof(Alarm)].EnumPassthru ...

  8. C#将Enum枚举映射到文本字符串

    介绍 当将以前的C代码移植到C#中时,我快发疯了,因为有很多的数组需要将常量映射到字符串.当我在寻找一个C#的方法来完成的时候,我发现了一个自定义属性和映射的方法. 如何使用代码? 对每一个enum枚 ...

  9. 161208、Java enum 枚举还可以这么用

    在大部分编程语言中,枚举类型都会是一种常用而又必不可少的数据类型,Java中当然也不会例外.然而,Java中的Enum枚举类型却有着许多你意想不到的用法,下面让我们一起来看看. 先来看一段代码示例: ...

随机推荐

  1. linux双网卡绑定为逻辑网卡

    网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术. 生产环境服务器为:DELL 网卡为:光纤 bond需要修改涉及的网卡配置文件 /e ...

  2. jenkins自动化部署项目7 -- 新建job(将服务代码部署在windows上)

    关于构建结束后jenkins会kill所有衍生子进程的官方解决方案:https://wiki.jenkins.io/display/JENKINS/Spawning+processes+from+bu ...

  3. Intellij IDEA 2019 + Java Spring MVC + Hibernate学习笔记(2)

    书接上文 首先根据各种Spring MVC教程,建立了基础的结构,是否合理不知道,姑且先这样,有问题再解决问题.学习新东西,不能怕掉坑里... 查询网上别人的经历说需要把根目录下的lib目录下的所有包 ...

  4. 基于Spark的电影推荐系统(电影网站)

    第一部分-电影网站: 软件架构: SpringBoot+Mybatis+JSP 项目描述:主要实现电影网站的展现 和 用户的所有动作的地方 技术选型: 技术 名称 官网 Spring Boot 容器 ...

  5. vue中关于滚动条的那点事

    vue中关于滚动条的那点事 不知道你有没有遇到过这种情况,有时当页面切换时,滚动条不在页面的顶端.最近半路加入一个项目,就遇到这种情况.(若只是为了解决此问题,可直接翻到最下方)下面谈谈解决此问题的过 ...

  6. Scrapy项目 - 实现斗鱼直播网站信息爬取的爬虫设计

    要求编写的程序可爬取斗鱼直播网站上的直播信息,如:房间数,直播类别和人气等.熟悉掌握基本的网页和url分析,同时能灵活使用Xmind工具对Python爬虫程序(网络爬虫)流程图进行分析.   一.项目 ...

  7. Hadoop源代码点滴-文件系统HDFS

    HDFS是Hadoop集群的文件系统,这是一种分布(distributed).容错(fault tolerant)的文件系统 所谓分布,是说整个文件系统的内容并非集中存储在一台或几台“文件服务器上”, ...

  8. springmvc(三)

    Spring MVC上传 Spring MVC为文件上传提供了直接的支持,这种支持是用即插即用的MultipartResolver实现的.SpringMVC使用Apache Commons FileU ...

  9. .net core 3.0 Signalr - 05 使用jwt将用户跟signalr关联

    Signalr是以Group.Connect为核心来进行推送,比如,给某个组.某个连接来推送,但实际场景中,核心应该是某个组.某个人:然而一个人可以对应多个连接(浏览器多个tab页):本节就来介绍下自 ...

  10. SpringBootSecurity学习(14)前后端分离版之 OAuth2.0介绍

    登录总结 前面基本介绍了security的常规用法,同时介绍了JWT和它的一个简单实现,基本上开发中遇到的登录问题都能解决了,即使在分布式开发,或者微服务开发中实现登录也基本没有问题了.securit ...