我有以下问题:
从库继承而来的带有简单侦听器的接口:
public interface RequestListener<RESULT> {
void onRequestFailure(FooException fooException);
void onRequestSuccess(RESULT result);
}
扩展FooException的类:
public class MyCustomFooException extends FooException {
. . .
}
}
我需要使用自定义类对
overload
方法进行签名。像这样的东西:
public interface MyCustomListener<RESULT> extends RequestListener<RESULT> {
@Override
public void onRequestFailure(MyCustomFooException e);
@Override
public void onRequestSuccess(RESULT result);
}
我怎样才能做到这一点?
最佳答案
您不能(在课堂上)这样做。如果这样做,您将不再实现RequestListener
接口。您需要使用与
界面:void onRequestFailure(FooException fooException);
如果您在接口中执行此操作,并且使用其他签名,则可以通过向其添加新方法来扩展原始接口。如果稍后使用非抽象类实现扩展的IglooListener
接口,则必须定义这两种方法。