java枚举类型enum用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java枚举类型enum用法相关的知识,希望对你有一定的参考价值。

参考技术A

用法如下:

用法一:常量      在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法

用法二:switch   JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强。

用法三:向枚举中添加新方法   如果打算自定义自己的方法,那么必须在enum实例序列的最后添加一个分号。而且 Java 要求必须先定义 enum 实例。

用法四:覆盖枚举的方法   所有的枚举都继承自java.lang.Enum类。由于Java 不支持多继承,所以枚举对象不能再继承其他类。 枚举类型都继承Enum

package com.it.exenum;

用法五:实现接口    public interface Food
enum Coffee implements Food
BLACK_COFFEE,DECAF_COFFEE,LATTE,CAPPUCCINO

用法六:使用接口组织枚举

用法七:关于枚举集合的使用

java enum类型

protected enum PropertyKeys
title
,titleStyle
,titleStyleClass
,disabled
,closable
,titletip;
String toString;
PropertyKeys(String toString)
this.toString = toString;

PropertyKeys()
public String toString()
return ((this.toString != null) ? this.toString : super.toString());


这个String toString;是起什麽作用?

参考技术A 这里是自己定义了toString函数,也就是重写了这个函数。java里很多类都定义了toString方法,作用是将类的内容转化为可见的字符串便于显示。这里重写了toString同样也是这个作用。 参考技术B 这里的String toString没什么作用 只是个说明这里的参数是 String类型的 变量是toString而已。一般没有这么写变量名的 难怪楼主迷惑。变量名都是写对应功能的英文名字。希望对您有所帮助追问

PropertyKeys(String toString) 这个是构造器吗?听说枚举变异后会生成一个继承枚举的类,如果是构造器那要怎麼个用法?

追答

是默认构造器。这个构造器没什么太大的作用只是初始化而已。一般开发 都省略构造器的。这里也可以省略的

本回答被提问者采纳
参考技术C 这个函数的作用是 如果这个枚举类型的变量不为空 则返回这个枚举类型变量的toString这个字符串
否则 返回父类的toString()方法中的字符串
参考技术D String toString在这里实际上没有什么多大作用,建议不要这么写追问

这是是看某个类的源码时看到的。

追答

PropertyKeys(String toString) 这个是构造器, 类构造器使用new ,在枚举中不要用构造器

以上是关于java枚举类型enum用法的主要内容,如果未能解决你的问题,请参考以下文章

java中的enum

java枚举类型

enum在java中是啥意思

java 的 枚举类型 在Eclipse里面用enum报错

java 的 枚举类型 在Eclipse里面用enum报错

vue中使用枚举enum