0

假设我在一个类中有以下代码:

enum Currency
{
  PENNY(1), NICKEL(5), DIME(10), QUARTER(25);
  private int value;
  private Bonus(int value)
  {
    this.value = value;
  }
  public int getValue()
  {
    return value;
  }
};
public class Coin
{
  Currency c;
  public Coin(Currency c)
  {
    this.c = c;
  }
  public void setCurrency(Currency c)
  {
    this.c = c;
  }
}

如果我有一个单独的类来创建具有某个 Currency 枚举的 Coin 对象,我怎么能在那个单独的类中编写一个方法来将枚举从 PENNY 设置为 DIME?

4

2 回答 2

0

您只需从您创建的单独类中调用硬币类中的方法 setCurrency 并传递您要设置的货币枚举。

例子:

假设您创建了一个货币枚举为 PENNY 的 Coin 对象:

Coin coin = new Coin (Currency.Penny);

现在您可以在要调用它的单独类中创建一个单独的方法,并将新的货币枚举设置为:

coin.setCurrency(currency.DIME);
于 2013-02-04T17:24:54.010 回答
0

根据您的问题,您所做的事情是有道理的。由于您已将enum中的定义same java filepublic class,因此enum's scope将是default并且它accessed只能在 中same package

所以我会建议movinganother file去做public

于 2013-02-04T17:26:40.457 回答