繁体   English   中英

实例化泛型类

[英]Instantiate generic class

我有一堂课,看起来像:

public class Entry<Key,Value> {

    private Key k;
    private Value v;

    public Entry(Key k , Value v)
    {
        this.k = k;
        this.v = v;
    }

    public Key getKey()
    {
        return k;
    }

    public Value getValue()
    {
        return v;
    }

}

我正在尝试在我的应用程序运行时实例化此类的实例。 我只知道程序运行时的键和值的类类型。 例如,我只知道Key和Value类类型将是String.class和Integer.class。 有没有办法用此信息实例化一个条目? 如果没有,我该怎么做才能动态创建条目?

谢谢!

一个程序就像

String key = getFromSomewhere();
Integer value = someMethodResult();

意味着您在编译时确实知道一个比Object更好的类型。 所以你可以做

Entry<String,Integer> entry = new Entry<String,Integer>(key, value);

也一样 没有“不知道运行时的类型”,您将始终知道实例至少是Object并且您也可以在泛型类中使用该实例。 您不需要使用具体的运行时类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM