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


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

 Temperature( double d )
    Temperature( double d )  {    //private
{    //private
 degree = d;
        degree = d;
 }
    }
 
    

 Temperature()
    Temperature()  {
{
 degree = -1.0;
        degree = -1.0;
 }
    }
 
    

 public static String getMemberList()
    public static String getMemberList()  {
{
 StringBuffer buf = new StringBuffer();
        StringBuffer buf = new StringBuffer();
 
        

 for( Temperature t : Temperature.values() )
        for( Temperature t : Temperature.values() )  {
{
 buf.append( t.toString() + "\n" );
            buf.append( t.toString() + "\n" );
 }
        }
 
        
 return buf.toString();
        return buf.toString();
 }
    }
 }
}

 
 package kb.enums;
package kb.enums;


 public class UseTemperature
public class UseTemperature  {
{
 
    
 private static StringBuffer out = new StringBuffer();
    private static StringBuffer out = new StringBuffer();
 
    

 public static void main(String[] args)
    public static void main(String[] args)  {
{
 
        
 Temperature temp = Temperature.High;
        Temperature temp = Temperature.High;
 
        
 switch( temp )
        switch( temp )

 
         {
{
 case Comfortable:
        case Comfortable:
 out.append( Temperature.Comfortable.toString() + "\n" );
            out.append( Temperature.Comfortable.toString() + "\n" );
 break;
            break;
 default:
        default:
 out.append( "Uncomfortable\n" );
            out.append( "Uncomfortable\n" );
 break;
            break;
 }
        }
 
        
 out.append( Temperature.getMemberList() );
        out.append( Temperature.getMemberList() );
 
        
 System.out.print( out.toString() );
        System.out.print( out.toString() );
 }
    }

 }
}
