A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

Enum与Enumeration为什么都叫枚举,有什么联系?

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

6 个回复

倒序浏览
Enum是枚举类是java.lang包中的,Enumeration是接口事java.util包中。
Enumeration 中:
实现 Enumeration 接口的对象,它生成一系列元素,一次生成一个。连续调用 nextElement 方法将返回一系列的连续元素。

例如,要输出 Vector<E> v 的所有元素,可使用以下方法:

   for (Enumeration<E> e = v.elements(); e.hasMoreElements();)
       System.out.println(e.nextElement());

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
Enumeration  是一个接口出现的原因是为其他实现该接口的类提供遍历功能,目前基本上不用了,使用Iterator 替代了
而Enum是一种枚举类型 它把一些可以枚举出来的事物封装到一个枚举类中,方便于访问和使用,二者没啥关系

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
Enum是枚举,是所有 Java 语言枚举类型的公共基本类,
枚举:让某个类型的变量的取值只能为若干个固定的值中的一个
Enumeration为java.util中的接口 ,接口的功能与 Iterator 接口的功能是重复的,类似迭代器,已被Iterator取代;


评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
Enumeration:
Enumeration为java.util中的接口
已被Iterator取代。


Enum:
Enum为java.lang中的类
1.标识符 MONDAY, TUESDAY等就称为枚举常量(enumeration constants)且不可重复。每一个枚举常量被隐式的声明成Day的一个public、static成员,而且其类型为Day,亦就是说这些常量是self-typed的。

2.下面的定义也是合法的:
package basic;
public enum Day
{
    MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY,
}

package basic;
public enum Day
{
    MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY,;
}

package basic;
public enum Day
{
    MONDAY, TUESDAT, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}
但是当枚举类型有其他定义时,则分号;是必须的.

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
Enum是Java.lang包中的类,也是所有Java语言枚举类型的公共基本类。而Enumeration则是java.util包中的一个接口。Enum实现的接口只有Serializable和Comparable,并没有Enumeration,所有二者没什么联系,区别就是一个是类,一个是接口。

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马