如何在静态内部类中重用外部类的Generic?

时间:2016-01-19 06:53:42

标签: java

我的理解是外部类的参数化类型可以被内部类访问,可能这不可能使用静态内部类?

以下内容不适合我。我希望我的静态内部类从包装类继承其泛型参数。

interface CarFactory<V, W> {
   W makeCar(V);
}

public abstract class Car<T, U> {

   ....

   public static class Factory implements CarFactory<T, U> {
    @Override
    public U makeCar(T model) {
      ...
    }
  }
}

1 个答案:

答案 0 :(得分:1)

来自8.1.2. Generic Classes and Type Parameters

  

编译时错误在以下位置引用泛型类C 的类型参数:

     
      
  • C的静态成员声明(§8.3.1.1,§8.4.3.2,§8.5.1)或

  •   
  • t 声明嵌套在C 中的任何类型声明的静态成员,或

  •   
  • C(第8.7节)的静态初始值设定项,或

  •   
  • 嵌套在C中的任何类声明的静态初始值设定项。

  •