作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
<分区>
Possible Duplicate:
Why can't enum constructors be protected or public in Java?
下面的代码只是演示了enum
在Java中的使用。它与 enum
的成员的值无关,只是总结了该 enum
的成员的值。
package enumtest;
enum Sum
{
Pen(10),Pencil(15),Eraser(5);
private int value;
private Sum(int value)
{
this.value=value;
}
public int getValue()
{
return(value);
}
}
final public class Main
{
public static void main(String...args)
{
int sum=0;
for(Sum o:Sum.values())
{
sum+=o.getValue();
}
System.out.println("sum = "+sum);
}
}
它在控制台上显示 sum = 30
。这里只有一个问题。一般来说,在一个类中,构造函数被声明为public
,那为什么enum
中的构造函数只能被声明为private
呢?不允许使用其他修饰符 public
和 protected
。即使将其声明为 public
也会导致编译时错误。为什么?
我是一名优秀的程序员,十分优秀!