栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

枚举、记录

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

枚举、记录

枚举(enum) -- 基本概念和语法

所谓枚举 -- 是一种取值范围固定在某个指定集当中的数据类型。 定义的语法:

 public enum 枚举类型名{
    值选项1,值选项2,....,值选项n;
 }

注意点

1、这里的值选项是标识符,不是字符串;

2、这里的值选项是有顺序的;

3、值选项不能重复。

使用的语法:

 枚举类型 变量 = 枚举类型.值选项;
枚举的本质

枚举其实是一个语法糖,在本质它是一个自动继承于Enum类的子类。 Enum类来自于java.lang包,是一个抽象类。Enum拥有的属性行为,所有的枚举类型都拥有。

属性:

name -- 选项名字 String

ordinal -- 选项的序号 int

这两个属性都是私有的常量,也就是说外部不可访问,同时一旦产生Enum对象以后其值也不能修改。

非static方法:

name() -- 返回选项的名字

ordinal() -- 返回选项的序号

compareTo() -- 比较两个枚举对象的大小,返回的是它们的序号差

另外凡是来自于Object类的方法,它都有。包括: equals() -- 判断两个枚举对象是否相等 toString() -- 返回枚举的字符串描述,其实重写后就是返回的name

static方法: values() -- 以数组的形式返回这个枚举类里面有哪些选项。

  1. enum枚举就是类类型;

  2. 父类是Enum是一个抽象类,来自于java.lang包;

  3. 常用方法: compareTo() equals() values()

枚举的高阶使用

1、在自定义的enum类型中可以增加属性;

2、在自定义的enum类型中可以增加行为;

3、在自定义的enum类型中可以重写从Enum中继承而来的方法

4、在自定义的enum类型中可以增加构造。

记录(record) 

在JDK14当中,提供了一种新的类型叫做record(记录)。它是专门用来定义一种特殊类的“简化语法”。

什么样的特殊类呢? 专门用来存放属性值,且每个属性的值一旦确立不能修改。这种类的预设场景是在做数据传输的时候。 用传统语法做这种类的设计,写起来比较麻烦。因此专门设计了record类型的语法。

定义语法:

//这里()里面既可以称之为参数,也可以称为属性
public record 名字(书写上参数){
​
}
​
然后它自动生成带参构造,自动生成final属性,自动生成与属性名保持一致的get方法,自动重写toString()
record的本质

也是语法糖,它也是类类型,它父类是来自于java.lang.Record的抽象类。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/874588.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号