为什么类可以使用泛型方法实现两个接口?

时间:2018-12-07 16:11:47

标签: java generics interface implementation

有2个界面:

public interface A {
    ArrayList<Integer> all() throws ExceptionA;
}

public interface B {
    List<String> all() throws ExceptionB;
}

并且有实现它们的类:

public class C implements A, B {
    @Override
    public ArrayList all() {
        return null;
    }
}

还检查了例外情况:

public class ExceptionA extends Exception {
}


public class ExceptionB extends Exception {
}

当我编译这段代码时,一切正常。为什么?

我知道在实现中我们可以使用子类型(在这种情况下ArrayList是List的子类型)。但是我还有下一个问题:

  1. 为什么在实现中可以省略 throws 部分?在接口方法中,有 throw 部分被检查异常
  2. 为什么在实现中可以省略泛型?

0 个答案:

没有答案