2017-04-03 93 views
0

假設我們有一個枚舉對象是這樣的:我怎樣才能將枚舉對象與嵌套枚舉傳遞給方法作爲參數?

public enum Action 
{ 
    FOO, 
    BAR; 
    public enum Move 
    { 
     UP, 
     DOWN, 
     LEFT, 
     RIGHT 
    } 
} 

和方法是這樣的:

private void useThisEnum(Action a) { 
    //code 
} 

在我的Eclipse中的方法不能接受嵌套枚舉的枚舉對象。我怎麼能通過它?我應該總是使用方法重載並聲明另一種方法:

private void useThisEnum(Action.Move ma) { 
    //code 
} 

或者我應該使用接口而不是外部枚舉?

+1

這是完全不同的說法。 「移動」不是「Action」的「子類」,所以是的,你必須聲明另一種方法。 'Move'是'Action'的內部類,但那是另一回事。 – dpassy

+0

奧基謝謝你。應該刪除這個問題? – F3R1

+0

只是標記我的答案是正確的,如果有人會尋找類似的問題。我已將我的評論移至下面的答案 – dpassy

回答

3

這是完全不同的說法。 Move不是Action的「子類」,所以是的,你必須聲明另一種方法。 MoveAction的內部類,但那是別的。

+0

Okey我會接受它,謝謝! – F3R1