我可以在Java中使用泛型声明中的变量吗?

时间:2016-04-21 09:57:22

标签: java generics

这是我的通用类:

class MultiType<T> {
    private T value;

    MultiType(T value) {
        this.value = value;
    }

    T get() {
        return value;
    }
}

此刻,我显然可以通过以下方式调用它:

MultiType multi = new MultiType<Integer>(0);

或者:

MultiType multi = new MultiType<String>("Hello, World");

但是,我想知道类型是否可以由变量动态设置。我知道下面的内容不起作用,但是我正在寻找的是:

Class strType = "".getClass();
MultiType multi = new MultiType<strType>("Hello, World");

提前致谢。

1 个答案:

答案 0 :(得分:0)

至少在Java中,泛型是编译时功能。你想要实现的是动态(运行时)泛型,因此是不可能的。