Java 5.0新特性 - 枚举类型enum

Java 5.0新特性 - 枚举类型enum

Java 语言的两个基本的元素是类(class)和接口(interface),现在Tiger又引入了枚举(enum).
其实枚举也不能算是严格意义上的新元素,它也是一种类,是一种特殊的类.所有的枚举都默认继承自java.lang.Enum,如果所有的类都默认继承自java.lang.Object一样.在Java提供的枚举中提供了比C/C++更多的功能,在这里可以像一般的类一样定义方法和属性,也可以有受限的构造函数(只能是private,且默认如此).

下面试写了一个枚举,以供参考.

package kb.enums;

public   enum  Temperature  {
    VeryHigh(
100.0),    //!这样使用构造函数
    High,
    LessComfortable,
    Comfortable(
25.0),    //构造函数
    MoreComfortable,
    Low,
    VeryLow(
-15.0);        //构造函数
    
    
private double degree;
    
    Temperature( 
double d ) {    //private
        degree = d;
    }

    
    Temperature() 
{
        degree 
= -1.0;
    }

    
    
public static String getMemberList() {
        StringBuffer buf 
= new StringBuffer();
        
        
for( Temperature t : Temperature.values() ) {
            buf.append( t.toString() 
+ "\n" );
        }

        
        
return buf.toString();
    }

}


package kb.enums;

public   class  UseTemperature  {
    
    
private static StringBuffer out = new StringBuffer();
    
    
public static void main(String[] args) {
        
        Temperature temp 
= Temperature.High;
        
        
switch( temp )
        
{
        
case Comfortable:
            
out.append( Temperature.Comfortable.toString() + "\n" );
            
break;
        
default:
            
out.append( "Uncomfortable\n" );
            
break;
        }

        
        
out.append( Temperature.getMemberList() );
        
        System.
out.print( out.toString() );
    }


}

你可能感兴趣的:(Java 5.0新特性 - 枚举类型enum)