java - 从类对象指定java中的泛型类型

标签 java generics reflection

为什么这是错误的:

    Class<? extends Number> type = Integer.class;
    ArrayList<type> = new ArrayList<>();

?

有没有办法在给定类对象的情况下实例化特定类型的类?


显然我永远不会直接这样做,这只是一个说明需要什么的例子。在我需要的实际代码中,我不知道类型的名称。例如

    public void createAList(Class<? extends Number> type)  
{
    ArrayList<type> toReturn = new ArrayList<>();
    return toReturn;
}

最佳答案

<T extends Number> ArrayList<T> createAList(Class<T> type)  
{
    ArrayList<T> toReturn = new ArrayList<>();
    return toReturn;
}


ArrayList<Integer> intList = createAList(Integer.class);

关于java - 从类对象指定java中的泛型类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15280414/

相关文章:

java - LocalContainerEntityManagerFactoryBean.setPersistenceUnitRootLocation 已在 Spring-Boot 1.4.1 中删除

java - 我可以在开放源代码项目中使用VTD-XML解析器并将其与开放源代码一起发布吗?

swift - 在swift中调用泛型函数时如何指定类型?

c# - 检查类型是否为 Nullable 的正确方法

c# - 哈希表的通用版本是什么?

Scala 反射 : How to find a no-arg constructor via reflection (if there are multiple constructors) ? "no-arg"的类型签名是什么?

go - 在golang中反射和类型切换后调用接口(interface)方法

java - 在 receive() 方法上获取按钮的操作,该方法是广播接收器的一种方法,但它显示为 null

qt - Qt 有类似 .NET Reflector 的东西吗?

java - SQLITE 更新性能不佳