我有這樣的代碼:重寫只有一個方法在Java接口的一個重載方法
public interface AsyncResponse {
abstract void processFinish(JSONObject output);
abstract void processFinish(String output);
}
我使用這樣的:
new AsyncResponse(){
@Override
public void processFinish(JSONObject output) {
//code
}
@Override
public void processFinish(String output) {
//code
}
}
當我重載只有一個方法(例如僅JSONObject)它給出了錯誤:
「類'從AsyncResponse派生的匿名類'必須聲明爲抽象或在'AsyncResponse'中實現抽象方法'processFinish(String)'」
如果有可能,我只需要重載一種方法,而不是兩種。 我不知道它是否與AsyncTask類似,其中只有doInBackground
被要求爲Override
-ed,而onther方法是可選的。
不知道我是否對我的問題使用了正確的編程術語,但我希望,我需要做的是明確的。