Bit*_*lue 11 java reflection instances
我需要检查一下:
public static boolean check(Class<?> c, Class<?> d)
{
if (/* c inherits from d */)
return true;
else
return false;
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点 ?
没有可能c.newInstance()
吗?
Kev*_*sox 22
使用 isAssignableFrom
if(d.isAssignableFrom(c)){
// then d is a superclass of c
// in other words, c inherits d
}
Run Code Online (Sandbox Code Playgroud)
确定此Class对象表示的类或接口是否与指定的Class参数表示的类或接口相同,或者是它们的超类或超接口.如果是这样,它返回true; 否则返回false.如果此Class对象表示基本类型,则如果指定的Class参数恰好是此Class对象,则此方法返回true;否则返回true.否则返回false.