作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
有没有办法找到泛型的类类型?
if (T instanceof String) {
// do something...
}
上面肯定是编译不出来的。
最佳答案
泛型是一种编译时特性。泛型在编译时添加检查,这在运行时可能没有任何意义。这是一个例子。您只能检查引用的对象的类型,它可能是代码中的父类(super class)型。如果你想传递类型 T,你必须明确地这样做。
void someMethod(Class<T> tClass) {
if(String.class.isAssignableFrom(tClass))
或
void someMethod(Class<T> tClass, T tArg) {
注意:类型可能不一样,
someMethod(Number.class, 1);
关于Java:实例泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4704902/
我是一名优秀的程序员,十分优秀!