温馨提示×

java怎么动态传入泛型T

小亿
271
2024-01-13 14:14:30
栏目: 编程语言

在Java中,无法直接动态传入泛型参数T。泛型参数T是在编译时确定的,不能在运行时动态传入。

但是,可以通过在方法或类中定义泛型参数来达到类似的效果。例如:

public class MyGenericClass<T> {
    private T value;

    public void setValue(T value) {
        this.value = value;
    }

    public T getValue() {
        return value;
    }
}

public class Main {
    public static void main(String[] args) {
        MyGenericClass<String> myString = new MyGenericClass<>();
        myString.setValue("Hello");
        System.out.println(myString.getValue()); // 输出: Hello

        MyGenericClass<Integer> myInteger = new MyGenericClass<>();
        myInteger.setValue(123);
        System.out.println(myInteger.getValue()); // 输出: 123
    }
}

在上面的例子中,通过在MyGenericClass类中定义了泛型参数T,可以动态传入不同的类型,同时保持类型安全。

0