是否有可能複製這種提供抽象方法的功能,在一個枚舉中,內部枚舉常量必須覆蓋並提供功能?是否有可能在c#中模仿這個Java枚舉代碼#
public enum Logic {
PAY_DAY {
@Override
public void acceptPlayer(Player player) {
// Perform logic
}
},
COLLECT_CASH {
@Override
public void acceptPlayer(Player player) {
// Perform logic
}
}
,
ETC_ETC {
@Override
public void acceptPlayer(Player player) {
// Perform logic
}
};
public abstract void acceptPlayer(Player player);
}
如果不能:: 你能提供,我可以實現很多特殊的邏輯類似的方式的方式?
編輯::我知道C#中的枚舉實際上並不像Java中的'對象',但我希望執行類似的邏輯。
編輯::爲了澄清,我不想爲每個特定的邏輯位提供具體的類。 IE瀏覽器,創建接口acceptPlayer和創造了許多新的類不appropiate
這是在C#中的枚舉** **沒有可能 - 就是這樣的不支持一個特徵。 – Oded 2012-01-31 20:37:17
而不是解釋你**不需要**,告訴我們你**做什麼**實現。 – Oded 2012-01-31 20:39:18
您可以創建一個'Action'工廠,將其傳遞給一個值,並且它會返回一個相關的「Action」來執行。 – 2012-01-31 20:41:08