黑马程序员__java_枚举

来源:互联网 发布:游族网络官网充值折扣 编辑:程序博客网 时间:2024/05/21 19:44

--------------- android培训、java培训、期待与您交流!---------------

枚举:

       枚举是JDK1.5出现的新特性,它是一个特殊的类,其构造方法是私有的。每个枚举类的成员变量就是其本身的一个实例。和其他普通类一样,默认构造方法是无参数的。实际上创建一个新的enum时,就是创建了java.lang.Enum类的子类。你可以指定有参数的构造方法,但是要注意指定成员实例的参数时要在后面加括号。下面举个列子:

package net.szpt;

public enum Traffic {

    RED(30), GREEN, YELLOW;//这里当没有下面的代码的时候,就可以不用加分号

    private int time;

 

    private Traffic() {//

    }

 

    private Traffic(int time) {

       this.time = time;

    }

}

//实际上上面的代码可以用下面的代码来表示。

class TrafficX {

    public static final TrafficX RED = new TrafficX(30);

    public static final TrafficX GREEN =new TrafficX();

    public static final TrafficX YELLOW =new TrafficX();

    private int time;

 

    private TrafficX() {

    }

 

    private TrafficX(int time) {

       this.time = time;

    }

    public String toString(){

       if(this==RED)

           return"RED";

       else {

           return this==GREEN?"GREEN":"YELLOW";

       }

    }

}

//再建立一个测试类:

class Test{

       public static void main(String[] args){

              System.out.println(Traffic.RED);

              System.out.println(TrafficX.RED);

       }

}

结果为 RED 和RED同样。(注意:在这里如果你要想打印你所期望的输出形式的话就必须重写toString()方法)

--------------- android培训、java培训、期待与您交流!---------------

原创粉丝点击