如何使用泛型返回泛型类的类类型?

Iarwa1N

假设我有一个像这样的接口;

public interface Validator<T> {
    Class<T> type();
}

如果我想用一个对象来实现这个接口,那没有任何问题。

public OrderValidator implements Validator<Order>{ 
   Class<Order> type(){ 
      return Order.class; 
   }
}

但是,如果我将Collection作为这样的通用类型传递,则无法实现此接口;

public CollectionValidator implements Validator<Collection<Item>>{

    Class<Collection<Item>> type(){
        //how can I implement this method to return type of Collection<Item> ?
    }
}

如何实现type()返回类型的方法Collection< Item>

Collection< Item>.class 不起作用。

半位

如果您只想使其编译,请尝试:

public interface Validator<T> {
    Class<T> type();
}
public static class CollectionValidator<Item> implements Validator<Collection<Item>>{
    @SuppressWarnings("unchecked") 
    public Class<Collection<Item>> type() {
        return (Class<Collection<Item>>) (Class<?>) Collection.class;
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何返回泛型类型的类

来自分类Dev

如何使用类型的辅助类泛型

来自分类Dev

泛型类型参数C#-如何泛型类返回类型

来自分类Dev

如何为泛型类指定泛型集合类型?

来自分类Dev

泛型ObjectPool-如何返回泛型类?

来自分类Dev

泛型-使用父类在泛型中指定类型

来自分类Dev

使用泛型返回从类型中提取的正确类

来自分类Dev

如何在泛型类中返回对象的泛型类型?

来自分类Dev

如何使用主类中的方法从嵌套类中返回泛型类型

来自分类Dev

如何在类中使用扩展的泛型类型的类型?

来自分类Dev

泛型类使用泛型参数

来自分类Dev

如何定义不是类的泛型类型?

来自分类Dev

如何在泛型类中返回“ this”?

来自分类Dev

如何从方法返回泛型类?

来自分类Dev

在泛型类中使用匿名类型

来自分类Dev

使用类对象作为泛型类型

来自分类Dev

使用类实例作为泛型类型

来自分类Dev

使用泛型替换特定的类类型

来自分类Dev

使用类泛型构造的子类型

来自分类Dev

如何使用类标记保留嵌套泛型的泛型类型

来自分类Dev

如何在非泛型静态类的多个方法中使用相同的泛型类型

来自分类Dev

如何使用已知类型作为参数创建具有泛型的泛型类?

来自分类Dev

如何使用“ typeof”从泛型类获取类型?

来自分类Dev

如何使用泛型类型声明类 - Java 1.7

来自分类Dev

从泛型类返回数组

来自分类Dev

在C#中的基类中使用泛型:如何确保基类中的方法返回派生类的类型?

来自分类Dev

如何使用泛型创建AutoValue类?

来自分类Dev

如何使用泛型设计多态类

来自分类Dev

Java泛型:如何为泛型类型化的类指定类类型?

Related 相关文章

热门标签

归档