日期:2014-05-18  浏览次数:20676 次

Enumeration 问题
下面这个程序我编译不了,   是为什么呢
package   com.jivesoftware.util;

import   java.util.*;

/**
  *   Utility   class   for   determining   the   sizes   in   bytes   of   commonly   used   objects.
  *   Classes   implementing   the   Cacheable   interface   should   use   this   class   to
  *   determine   their   size.
  */
public   class   CacheSizes   {

public   static   int   sizeOfProperties(Properties   properties)   {
                if   (properties   ==   null)   {
                        return   0;
                }
                //   Base   properties   object
                int   size   =   36;
                //   Add   in   size   of   each   property
                Enumeration   enum   =   properties.elements();
                while(enum.hasMoreElements())   {
                        String   prop   =   (String)enum.nextElement();
                        size   +=   sizeOfString(prop);
                }
                //   Add   in   property   names
                enum   =   properties.propertyNames();
                while(enum.hasMoreElements())   {
                        String   prop   =   (String)enum.nextElement();
                        size   +=   sizeOfString(prop);
                }
                return   size;
        }
}

------解决方案--------------------
enum是关键字,不能做属性名字的
------解决方案--------------------
Enumeration是java.util包里的一个接口,用来定义枚举类的,enum是关键字,根据命名规范,不能用的,就像不能定义一个变量叫true一样
------解决方案--------------------
jdk1.5开始, enum是关键字, 以前的版本可以使用