iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >java枚举有什么用
  • 508
分享到

java枚举有什么用

2023-06-29 18:06:34 508人浏览 安东尼
摘要

这篇文章主要为大家展示了“java枚举有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“java枚举有什么用”这篇文章吧。一、基本概念枚举是Java1.5引入的新特性,通过关键字enum来定

这篇文章主要为大家展示了“java枚举有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“java枚举有什么用”这篇文章吧。

一、基本概念

枚举是Java1.5引入的新特性,通过关键字enum来定义枚举类。枚举类是一种特殊类,它和普通类一样可以使用构造器、定义成员变量和方法,也能实现一个或多个接口,但枚举类不能继承其他类。

二、枚举的优缺点

1、优点

Effctive Java中之所以推荐用枚举代替所有常量Code,原因如下:

(1)类型检查,有效性检查

(2)枚举作为一个类,可以有自己的属性(通常应该是常量,我没遇到过不是的情况)以及自己的方法(否则只能用switch来写,实际违反原则)

(3)和常量相比,无需查看文档和源码就能直接知道所有可能返回值,方便编码。

然而这里的问题就出在第一点上,实际上分布式环境下(1)并不是必然的。如果业务处理中允许某个接口返回值有未定义内容,那么在反序列化中就不该对此抛出异常,不必死守(1)。同时,从第(2)点和第(3)点来看,这样限制枚举的使用范围造成的影响是极大的。将有自己属性,自己方法实现的枚举改写为code和其他方法的配合,需要的代码量上升不少,而且代码腐烂度极大增加。

2、缺点

(1)由于Java中支持单继承,因此枚举类型不能再继承其他类;

(2)使用枚举作为返回值可能造成的问题其实大家都知道就是客户端和服务端版本不一致的话,会造成反序列化异常,于是《阿里巴巴JAVA开发手册》对于这个问题的处理办法就采取了尽量避免异常出现,所以禁止定义枚举为返回值。

三、解决ifelse

对于业务开发来说,业务逻辑的复杂是必然的,随着业务发展,需求只会越来越复杂,为了考虑到各种各样的情况,代码中不可避免的会出现很多if-else。

一旦代码中if-else过多,就会大大的影响其可读性和可维护性,而且代码显得很low。
java枚举有什么用
枚举可以解决这个问题;

关于枚举与switch是个比较简单的话题,使用switch进行条件判断时,条件参数一般只能是整型,字符型。而枚举型确实也被switch所支持,在java 1.7后switch也对字符串进行了支持。这里我们简单看一下switch与枚举类型的使用

static void testSwitch(Week week){    switch (week){        case MONDAY:            System.out.println(week.getMeaning());            break;        case TUESDAY:            System.out.println(week.getMeaning());            break;        case WEDNESDAY:            System.out.println(week.getMeaning());            break;        case THURSDAY:            System.out.println(week.getMeaning());            break;        case FRIDAY:            System.out.println(week.getMeaning());            break;        case SATURDAY:            System.out.println(week.getMeaning());            break;        case SUNDAY:            System.out.println(week.getMeaning());            break;        default:            System.out.println("您输入有误");            break;    }}

四、枚举的常用方法

java枚举有什么用

以上是“java枚举有什么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: java枚举有什么用

本文链接: https://www.lsjlt.com/news/326052.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java枚举有什么用
    这篇文章主要为大家展示了“java枚举有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“java枚举有什么用”这篇文章吧。一、基本概念枚举是Java1.5引入的新特性,通过关键字enum来定...
    99+
    2023-06-29
  • java枚举是什么
    java枚举是一种特殊的数据类型,它的本质是java.lang.Enum的子类,在java中被enum关键字修饰的类型就是枚举类型,它可以将常量组织起来,统一进行管理,如果枚举不添加任何方法,枚举值默认为从0开始的有序数值,除了不能继承,基...
    99+
    2024-04-02
  • java枚举
    目录 1.枚举的简介 2.枚举的形式和常用方法 3.枚举中的构造方法 4.练习实例 1.枚举的简介 枚举就是相当于一种来存放常量的特殊的类,是一种新的常量定义方式,提供了安全检查功能,简而言之就是把常量搞的有对象的特性了,类型也是和类...
    99+
    2023-09-02
    java 开发语言
  • 为什么建议使用Java枚举
    这篇文章主要介绍“为什么建议使用Java枚举”,在日常操作中,相信很多人在为什么建议使用Java枚举问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”为什么建议使用Java枚举”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-16
  • java为什么避免使用枚举
    在Java中,枚举是一种特殊的数据类型,用于定义一组有限的常量。虽然枚举在某些情况下非常有用,但也有一些情况下建议避免使用枚举,原因...
    99+
    2023-08-30
    java
  • C语言枚举有什么用
    这篇文章将为大家详细讲解有关C语言枚举有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、什么是枚举我对枚举的理解就是把一些固定的值—列举出来分别起个名字,比如说给1取个名字叫T...
    99+
    2023-06-29
  • java的枚举是什么意思
    这篇文章主要介绍“java的枚举是什么意思”,在日常操作中,相信很多人在java的枚举是什么意思问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java的枚举是什么意思”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-17
  • Java面向对象之enum枚举类型有什么用
    这篇文章主要为大家展示了“Java面向对象之enum枚举类型有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java面向对象之enum枚举类型有什么用”这篇文章吧。public ...
    99+
    2023-06-02
  • java枚举高级用法有哪些
    Java枚举的高级用法包括:1. 枚举的自定义方法:可以为枚举类型添加自定义方法,使其具有更多的功能。2. 枚举的构造函数和属性:可...
    99+
    2023-08-21
    java
  • java中枚举的用法有哪些
    在Java中,枚举(enum)是一种特殊的数据类型,用于定义一组常量。枚举常常用于表示一组相关的常量,例如星期几、月份等。以下是枚举...
    99+
    2023-08-30
    java
  • 【javaSE】 枚举与枚举的使用
    文章目录 🎄枚举的背景及定义⚾枚举特性总结: 🌲枚举的使用🚩switch语句🚩常用方法📌示例一Ὄ...
    99+
    2023-09-20
    java 开发语言 枚举 源码 反射
  • 【Java】枚举类型
    文章目录 一、枚举类型1.1 什么是枚举类型1.2 Java中枚举类型的特点 二、枚举类型的使用2.1 创建语法2.2 常用方法2.3 使用案例 三、枚举的优缺点 一、枚举类型 ...
    99+
    2023-09-02
    java enum 枚举
  • Java中的枚举怎么使用
    本篇内容主要讲解“Java中的枚举怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java中的枚举怎么使用”吧!枚举(enum)枚举是一个被命名的整型常数的集合,用于声明一组带标识符的常数...
    99+
    2023-07-05
  • 怎么用好Java中的枚举
    本篇内容主要讲解“怎么用好Java中的枚举”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用好Java中的枚举”吧!1、概览enum关键字在 java5 中引入,表示一种特殊类型的类,其总是继...
    99+
    2023-06-16
  • Java枚举类的使用方法是什么
    本篇内容介绍了“Java枚举类的使用方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一 枚举类有哪些特点创建一个ColorEnum的...
    99+
    2023-06-16
  • java中枚举的原理是什么
    java中枚举的原理是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Java可以用来干什么Java主要应用于:1. web开发;2. Android开发;3...
    99+
    2023-06-14
  • C#枚举和枚举成员怎么使用
    这篇文章主要讲解了“C#枚举和枚举成员怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#枚举和枚举成员怎么使用”吧!C#枚举类型是一种的值类型,它用于声明一组命名的常数。(1)C#枚...
    99+
    2023-06-17
  • 枚举怎么在Java中使用
    本篇文章给大家分享的是有关枚举怎么在Java中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。使用方法如下:package com.ljq.test;public class...
    99+
    2023-05-31
    java 枚举 ava
  • SNMP OID批量枚举工具有什么用
    这篇文章给大家分享的是有关SNMP OID批量枚举工具有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。SNMP OID批量枚举工具SNMP信息包含大量的系统、设备信息。这些信息均使用OID方式表示。由于OI...
    99+
    2023-06-04
  • java枚举类所有值怎么获取
    在Java中,可以使用`values()`方法来获取枚举类的所有值。具体的使用方法如下所示: enum MyEnum { V...
    99+
    2023-10-26
    java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作