2015-12-26 142 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

他沒有分號僅在枚舉定義中需要,如果它們也包含實現 –