枚举(enum 类)|学习笔记

简介: 快速学习 枚举(enum 类)

开发者学堂课程【【名师课堂】Java 高级开发枚举(enum 类) 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/372/detail/4542


枚举(enum 类)


内容简介

一、Enum 类

二、enum 和 Enum 的区别?

 

一、Enum 类

虽 然 JDK1.5 提供有 enum 关键字,但是 enum 并不是一种新的结构,相反,它只是对一种类型的包装:

使用 enum 关键字定义的枚举类本质上就相当于一 class 定义的类继承了java.lang.Enum 父类。

父类是:

打开 Java 找到 Java.lang  找到 e num 打开:

Class Enum<E extends Enum<E>>

java.lang.Object

java.lang.Enum<E>

Type Parameters:

E- The enum type subclass

All lmplementec lnterfaces:

Serializable. comparable<E>

<E extends Enum<E>>  首先 E 设置了泛型的上线必须是 extends Enum 继承自<E> ,这个地方能存的就是一个枚举。

在 Enum 类里面有以下的方法:

l 构造方法:protected Enum(String name, int ordinal);

l 取得枚举名字:public final String name()

l 取得枚举的序号:public final int ordinal()

范例:观察方法的使用

package cn.mldn. demo;

enum Color {

RED,GREEN,BLUE ;

}

public class TestDemo {

public static void main(string[ ]args) {

system.out.print1n(color.RED);

}

在此基础上 System. out . println(Color.RED) ; 跟上序号 ordinal()+”=”再加上Color.RED.name()

System.out.println(Color.RE,ordinal()+”=”+ Color.RED.name()) 执行出现:

0=RED

如果把 green 放在前边执行出现:1=RED

所以:构造方法:protected Enum(String name, int ordinal);是当定义枚举类中对象的时候自动设置序号和名字;

在枚举操作里面还有一个方法可以取得所有的枚举数据:values() 返回的是一个枚举的对象数组;

范例:取得所有的枚举数据

package cn.mldn. demo;

enum Color {

RED,GREEN,BLUE ;

}

public class TestDemo {

public static void main(string[ ]args) {

system.out.print1n(color.RED);

}

在上述基础上写入 for(Color temp:Color values()) 返回的是一个对象数组,后边跟上 temp,如图:

package cn.mldn.demo;

enum color {

RED,GREEN,BLUE ;

}

public class TestDemo {

public static void main(string[ ] args) {

for (color temp : color.values()){

system.out.println(temp.ordinal() + "= " + temp.name());

}

执行出现:

0=RED

1=GREEN

2=BLUE

所以这个功能是多例本身不具备的,枚举与多例模式最大的区别就是 values

 

二、enum 和 Enum 的区别?

面试题:请解释 enum 和 Enum 的区别?

enum 是一个关键字,使用 enum  定义的枚举类本质上相当于一个类继承了 Enum这个抽象类。

相关文章
|
6月前
|
C语言
C enum(枚举)
C enum(枚举)
38 0
|
6月前
|
安全 算法 编译器
【C++基础语法 枚举】C/C++ 中enum枚举量的介绍:介绍enum枚举量在C/C中的作用和使用方法
【C++基础语法 枚举】C/C++ 中enum枚举量的介绍:介绍enum枚举量在C/C中的作用和使用方法
77 2
|
1月前
|
C#
C# 枚举(Enum)
枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。 C# 枚举是值类型。换句话说,枚举包含自己的值,且不能继承或传递继承。
41 9
|
2月前
|
存储 C语言
C enum(枚举)详解
在C语言中,`enum`(枚举类型)允许用户定义包含命名整数常量的数据类型,提高了代码的可读性和可维护性。通过关键字`enum`定义枚举,如`enum Color {RED, GREEN, BLUE}`。枚举值默认从0开始递增,也可自定义。枚举类型实际上是整型的别名,可用于简化代码并限制变量的具体取值范围。
138 15
|
6月前
|
程序员 C语言
c enum(枚举)
c enum(枚举)
80 1
|
6月前
|
程序员 测试技术 C++
[C++] enum枚举类型用法
[C++] enum枚举类型用法
101 0
|
6月前
|
算法 C++ UED
【Qt 常用枚举】深入解析C++中的AlignmentFlag枚举
【Qt 常用枚举】深入解析C++中的AlignmentFlag枚举
129 0
|
6月前
|
SQL Java 数据库连接
myabtis中是否可以映射 Enum 枚举类
myabtis中是否可以映射 Enum 枚举类
|
Java 索引
枚举类 - 自定义枚举类与使用enum关键字
枚举类 - 自定义枚举类与使用enum关键字
117 0
|
Java C语言 Spring
enum(枚举)
枚举是 C 语言中的一种基本数据类型,它可以让数据更简洁,更易读。
250 0