gpt4 book ai didi

java - 检查一个类是否是泛型类型

转载 作者:行者123 更新时间:2023-12-01 14:32:05 25 4
gpt4 key购买 nike

也许这不是什么大问题,但我想不通。有没有办法检查一个类是否被定义为泛型类型。我不想定义此类的实例,我只是想以某种方式知道此类是定义为普通类还是泛型类。

这将是第一个类,属于通用类型

public class MyGenericClass<T, G> {

public void someMethod(T firstParam, G secondParam){
// do something
}
}

这将是第二个普通类(class)

public class AnotherClass {

public void someMethod(){
// do something
}
}

我想要一种方法来找出这个结果

isGenericType(MyGenericClass.class) --> true
isGenericType(AnotherClass.class) --> false

最佳答案

来自Class<?> object你可以查看 cls.getTypeParameters() .

从一个泛型类中你得到一个非空数组 TypeVariable .

从非泛型类中得到一个空数组。

例如

java.util.List.class.getTypeParameters()
TypeVariable[1] { E }
String.class.getTypeParameters()
TypeVariable[0] {}

关于java - 检查一个类是否是泛型类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62189684/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com