2015-02-05 108 views
0

我有一個父類soup其中的方法add。當我使用它時,我希望它添加'x'成分。如何檢查函數是否被調用?

public boolean soup(String ingredient) 
{ 
    if(ingredient is in soupStuff){ //this is just sudocode 
     yummySoup[x]=ingredient; //yummySoup is an array 
     return true; 
    } 
    else 
     return false; 
} 

我不知道現在該怎麼改變這個,當我繼承它。我想檢查一下我是否曾經打過電話,然後做一些不同的事情,如果我有。我不想重寫函數,並想知道我是否可以檢查它,然後添加一些東西,而不必在繼承類中重寫它。

例如,檢查我添加的第一個ingredient如果返回true,我想使它這樣我不僅能增添ingredientaPinchOfSalt

我知道有進口的,我可以使用,但我想找到一種方法,沒有它。 ... 這可能嗎?由於

+2

「我不想重寫功能」 - 強硬的好友,這正是您必須做的... – alfasin

+1

我想知道什麼*進口*您可以使用。 –

+0

「我知道有進口」,請告訴我們,以便我們可以用只有進口替換我們的整個代碼庫。 –

回答

0

你可以做的是,你可以有yummySoup作爲ArrayList和同時加入到只檢查是否已經包含該元素

ArrayList<String> yummySoup = new ArrayList<String>(); 
if(!yummySoup.contains("<youingredient>")){ 
    yummySoup.add("<youingredient>"); 
} 

這僅僅是一個例子。您需要根據您的需要適當地使用.contains