java基础-Java枚举类

本文介绍了Java 5之后引入的枚举类型,它解决了Java 5之前使用静态常量代替枚举导致的类型不安全和调试不便等问题。枚举类是一种特殊的类,继承自java.lang.Enum,可以添加成员变量和方法,实现接口。枚举类的声明、枚举常量的使用、枚举类中的构造方法、成员方法和常用方法如ordinal()、values()、valueOf(String)等都在文中进行了详细阐述。
摘要由CSDN通过智能技术生成

前言: Java 5之前没有提供枚举类型,尽管可以通过声明静态常量(final static变量)替枚举,但是仍然很多Java程序员期待能有类似其他语言中的枚举类型。Java 5之后提供了枚举类型,Java枚举类型本质上是一种继承java.lang.Enum类,是引用数据类型,因此也称为“枚举类”。本章介绍Java枚举类。
1 枚举概述
在C和Objective-C等其他语言中,枚举用来管理一组相关常量的集合,使用枚举可以提高程序的可读性,使代码更清晰且更易于维护。
在Java 5之前没有提供枚举类型,可以通过声明静态常量(final static变量)替代枚举常量,例如想声明一组常量表示一周中的5个工作日,那么Java 5之前实现代码如下
在这里插入图片描述

通常在接口中声明一组静态常量,当然也可以在一般类中声明一组静态常量。这些常量往往都是int类型,这是为了以后方便使用switch语句进行判断。
调用代码如下在这里插入图片描述

从上述代码中直接使用这些常量。但这种方式还存在一些问题:

  1. 类型不安全。代码第①行是声明工作日变量day,day是整数类型,程序执行过程中很有可能给day变量传入一个任意的整数值,可能导致程序出现错误。
  2. 程序不方便调试。在程序调试时,如果通过日志输出day值,那么只能看到0~4之间的数值,程序员
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值