【问题标题】:Enumeration enum in JavaJava中的枚举枚举
【发布时间】:2011-10-23 00:43:33
【问题描述】:

我无法理解问题。问题是: 编写一个语句,使条款枚举中的常量可用于没有限定的类

这是我目前的代码;

public enum Terms {

    NET_30_DAYS, NET_60_DAYS, NET_90_DAYS; 
    //either name() or super() can be used

     @Override
     public String toString() {
         String s = "Net due " + name() + " days"; 
         return s;
     }
}

【问题讨论】:

  • 听起来像是功课。看看import static 声明。
  • 如果是家庭作业,并且您不介意成为一个好斗的学生,请让他们知道 Java 不建议这种做法:download.oracle.com/javase/1,5.0/docs/guide/language/…(假设 user3928585 是正确的,这就是您的意思试图完成)。

标签: java enums


【解决方案1】:

我认为他们指的是static import

例子:

import static mypackage.Term.*;

这将使您能够使用以下代码:

public void doSomething(Term term)
{
    if (NET_30_DAYS.equals(term))
    {
        ...
    }
    else if ...
}

【讨论】:

    【解决方案2】:

    你可能正在寻找

    import static package.Terms.*;
    
    public class Foo {
    
         public void aMethod() {
                 System.out.println(NET_30_DAYS);
                 // you can do the above instead of System.out.println(Terms.NET_30_DAYS);
         }
    }
    

    这里有一点需要注意。如果您的 Terms.java 在默认包中,则无法对其进行静态导入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-10
      • 1970-01-01
      • 1970-01-01
      • 2011-07-09
      • 2011-03-22
      • 2015-08-08
      • 2010-11-26
      相关资源
      最近更新 更多