java enum类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

代码是书上的源程序,一个字都没变
enum Season

spring,summer,autumn,winter


public class E

public static void main(String args[])

Season season=Season.spring;
System.out.println(season);



可是总会提示错误,我的环境变量path和classpath都配好了

郁闷啊,希望大家帮帮忙~~~~~
我的JDK是1.5的,eclipse也提示相同错误,疯了,就现在来看就是有枚举类型的代码不能编译,很无语啊,是不是JDK没装好啊

不会啊~  这个程序没问题,下面的是我运行结果截屏。

你试试下面网址找找:

http://topic.csdn.net/t/20030106/10/1330248.html

或者你可以换一个java运行工具,Eclipse,JCreator ,你这个程序我用Eclipse运行也是对的。 

问题回答补充:

java代码中空白只能是半角空格符或者是tab符,否则可能导致上述问题!另外文本编辑器的编码应采用ascII 。

你检查一下你空白地方的空格符,是不是有全角符,建议你用Eclipse ,把所有空格去掉,在用Eclipse 自动对齐格式。

另外:如果实在不行的话,只能重装jdk试试了。真解决不了了就只能这样咯。

加油吧!!

参考技术A 你这个是error,看见没,那就是说自己环境有问题
枚举是java1.5之后出来的,这个没错
你的程序我用myeclipse跑正常
参考技术B spring,summer,autumn,winter这句话少了一个“;” 参考技术C 你的JDK应该不是1.5以上版本的吧。

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

enum在java中是啥意思

java中的enum

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

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

java 枚举类型enum

java枚举类型