【JavaSE---07】枚举

1. 枚举

  1. 枚举:枚举属于一种特殊的类,里面只包含一组有限的固定的对象集合。
  2. 实现方式:
    1. 自定义实现枚举
    2. 使用enum关键字

1.1 自定义枚举

  1. 步骤:
    1. 将类的构造器私有化。防止直接new创建新的对象
    2. 去掉setter方法,只设置getter方法。防止固定对象的属性被修改。
    3. 创建固定对象:在类的静态成员变量处,并用static final修饰【注意:final修饰的变量名大写】
      在这里插入图片描述
  2. 例子:
    在这里插入图片描述

1.2 enum关键字实现枚举

  1. 步骤:
    1. enum关键字代替定义类时的class关键字
    2. 将类的构造器私有化。防止直接new创建新的对象
    3. 去掉setter方法,只设置getter方法。防止固定对象的属性被修改。
    4. 创建固定对象:
      1. 在类的最前面
      2. 使用语法对象名(传给构造器的参数);
      3. 多个对象间使用, 而不是; ,最后一个对象使用; 结尾
        在这里插入图片描述

      注意:如果创建固定对象时,使用的是无参构造器,则括号可以省略。
      在这里插入图片描述

  2. 例子:
    在这里插入图片描述
  3. 细节:
    1. 所有enum定义的类都隐式继承了Enum类故枚举类不可以再继承其他类。【因为单继承机制】
    2. 枚举类可以实现接口【因为多接口机制】
    3. 直接打印固定对象,调用的是toString()方法,而父类EnumtoString()方法返回的是该枚举对象的变量名。
      在这里插入图片描述
      在这里插入图片描述

2. enum的常用方法

在这里插入图片描述

2.1 枚举对象的方法

2.1.1 toString方法

枚举类都继承了父类Enum类,父类种有toString方法,返回的是当前特定对象的名字。

同时,作为子类,可以重写toString方法,返回更多的信息。
在这里插入图片描述

2.1.2 ordinal方法

返回当前枚举对象在枚举对象数组中的下标。
在这里插入图片描述

2.1.3 compareTo方法

用于比较两个枚举对象在枚举对象数组的下标之差,可以用来判断下标是否相等。

在这里插入图片描述

2.2 枚举类的方法

2.2.1 values方法

返回枚举所有对象,是一个一维数组。
在这里插入图片描述

2.2.2 valueOf方法

根据输入的枚举对象变量名,到枚举对象集合中去查找是否有该名的枚举对象:有则返回该对象;没有则报错
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ElegantCodingWH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值