为什么泛型类可以实现具有不同类型参数的接口?

时间:2015-11-06 05:48:46

标签: java

例如,如本节

interface MyGenericsI<A, B, C>{
    public A getA();
    public B getB();
    public C getC();
}

abstract class MyGenerics<D> implements MyGenericsI{
}

1 个答案:

答案 0 :(得分:1)

因为使用类'泛型类型的字段或方法可能与接口的方法无关。举例:

public class Company<P> implements List<Employee> {
    public P produceProduct();
    public Employee get(int index) { ... }
    ...
}

此处,Company<P>能够生成通用类型P的产品,以便您可以创建一个制作计算机的Company<Computer>。但是,公司也有员工,所以你可以让它实现List<Employee>的方法来访问公司的员工(虽然这个例子中的组合会更好)。