如何在不实例化对象的情况下确定类型



在java中

public class GenericUtil<T> {
public boolean judge(){
return T instanceof Application;
}
}

在科特林

class GenericUtil<T> {
fun judge(): Boolean {
return T is Application
}
}

我只想确定泛型T是否是对象类型。。。

这是不可能的,但是,您可以使用反射:

public class GenericUtil<T> {
private final Class<T> clazz;

public GenericUtil(Class<T> clazz) {
this.clazz = clazz;
}
public boolean judge(){
return Application.classisAssignableFrom(clazz);
}
}

最新更新