2015-12-26 96 views
1

我想在类中定义一个枚举,但Eclipse继续强调我的代码中可爱的红色。这里是我的代码看起来像大部分:枚举内部类

package campusvilleFoodBank; 

import java.util.NoSuchElementException; 
import java.util.Scanner; 

public class FoodArrayList { 

    public enum Days {SUN, MON, TUE, WED, THUR, FRI, SAT} 

    private Food [] foodArray; 
    private int iterator; 
    private boolean startIndexing; 
    private static final int MAX = 24; 

    public FoodArrayList(){ 
     foodArray = new Food [MAX]; 
     iterator = 0; 
    } 

    public FoodArrayList(int arraySize){ 
     foodArray = new Food [arraySize]; 
     iterator = 0; 
    } 
//Rest of code, with more complicated methods here 
} 

我必须失去了一些东西很简单,它很可能是一个语法错误....下面的代码涉及的方法,如我toString(),一些foodArray实例变量的排序方法,以及这些行的内容。我没有定义主要方法。我知道我可以在一个类定义中定义一个枚举,并且我在别处看到的所有代码都写成与我拥有的几乎完全相同。但是,Eclipse似乎不承认即使是enum声明,我不相信我需要导入任何东西。

这是我在Eclipse中看到的代码,我有一个错误有:

Code with error

为了便于比较,这里是从另一个,独立的java文件,似乎是没有错误的一些代码枚举:这个

Code without error

任何援助将不胜感激。让我知道是否需要进一步澄清。

+0

新食品枚举结束失踪? Food的构造函数在哪里?还是上课? –

+0

难道你没有比“红色下划线”更多的错误信息吗?在枚举声明之后你只是错过了一个分号吗? – Robert

+0

食物是FoodArrayList之外的另一个类 – coolDude

回答

1

这可能是一些事情,但不涉及enum,这很好。

  1. 在我看来,除非Food确实存在,它MUST创建
  2. 如果确实存在,那么它必须驻留在不同的包,这反过来你要import像这

    import package_name.package2.Food;

  3. 这可能是因为你的class名字不是相同file

    FoodArrayList

  4. 有时候你IDE在这种情况下Eclipse需要一些帮助,尽量保存文件,关闭它和它重新打开。

+0

食物是FoodArrayList之外的另一个类 – coolDude

+0

¿它是否在同一个包中:'campusvilleFoodBank'?如果不是**导入** –

+0

当您将鼠标悬停在带下划线的错误上时。 ¿你得到了什么错误信息? –

-1

你有一个分号在FoodArrayList类

+0

他没有分号仅在枚举定义中需要,如果它们也包含实现 –