Java无法找到符号枚举

JDe*_*age 2 java enums

我正在用Java模拟国际象棋游戏,我遇到了一些问题.这是代码的样子(相关部分):

枚举类Couleur.java:

public enum Couleur {BLANC, NOIR}

Piece.java:

public abstract class Piece {
(...)
  public Piece(Couleur couleurParam){
    this.couleurPiece = couleurParam;
  }
(...)
}

最后是Tour.java:

public class Tour extends Piece {
(...)
  public Tour(Couleur couleurParam){
    super(couleurParam);
  }
(...)
}

所有.java文件都在同一个文件夹中.然而在编译时我得到一个"找不到符号符号:变量NOIR位置:类高原"

(Plateau是实例化Tour的类.)

任何人都可以帮我弄清楚这里有什么问题吗?

非常感谢,

JDelage

Jon*_*eet 6

您没有在Plateau中显示无法编译的行也没有任何帮助.如果您遇到编译错误,请发布无法编译的代码.我猜你是这样做的:

new Tour(NOIR)
Run Code Online (Sandbox Code Playgroud)

代替

new Tour(Couleur.NOIR)
Run Code Online (Sandbox Code Playgroud)

你可以在没有限定条件的情况下引用枚举值的唯一时间是:

  • 在枚举本身内
  • 使用静态导入
  • 在switch语句中

  • 乔恩 - 谢谢,就是这样.我第一次使用enum,菜鸟错误.我觉得我知道一个名人现在我的一个问题已被Jon Skeet回答.也许应该有一个徽章.:-) (3认同)