黑马程序员技术交流社区
标题:
enum 问题 ~~~秋香姐
[打印本页]
作者:
郭宁
时间:
2012-5-17 10:25
标题:
enum 问题 ~~~秋香姐
public class eunmTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TrafficLamp t1 = TrafficLamp.RED;
TrafficLamp t2 = TrafficLamp.GREEN;
TrafficLamp t3 = TrafficLamp.YELLOW;
System.out.println(t1.getValue());
System.out.println(t2.getValue());
System.out.println(t3.getValue());
// 运行结果:
// enum的有参构造函数运行了
// enum的无参构造函数运行了
// enum的有参构造函数运行了
// 1
// 0
// 1
// 为何 输出不是 1 0 3 ??
}
public enum TrafficLamp{
RED(1),GREEN,YELLOW(3);
private int value;
TrafficLamp(){
System.out.println("enum的无参构造函数运行了");
this.value = 0;
}
TrafficLamp(int v){
System.out.println("enum的有参构造函数运行了");
this.value = 1;
}
public int getValue(){
return this.value;
}
}
}
复制代码
作者:
郭宁
时间:
2012-5-17 10:34
我错了~~~
因为是在初学 程序是一点一点跟着想法添加的~~
TrafficLamp(int v){
36. System.out.println("enum的有参构造函数运行了");
37. this.value = 1;//这里没改成 V~~ 泪崩了
38. }
作者:
李文富
时间:
2012-5-17 13:13
35. TrafficLamp(int v){
36. System.out.println("enum的有参构造函数运行了");
37. this.value = 1; //此处改为传人的参数v即可,
38. }
eunm内部构造方法的调用,小问题,可能楼主没注意到,所以多注意下细节哦。
作者:
郭宁
时间:
2012-5-17 15:50
李文富 发表于 2012-5-17 13:13
35. TrafficLamp(int v){
36. System.out.println("enum的有参构 ...
嗯,木有看到。谢啦~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2