我有以下问题:

从库继承而来的带有简单侦听器的接口:

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接口,则必须定义这两种方法。

10-05 22:47