想象一下,我想编写一个名为isInstanceof
的无用方法,它返回boolean
。
我在考虑它。但是我没有离开。必须使用instanceof
,如:
[object] instanceof [a classname]
// I was thinking about something like this
public static boolean isInstanceof(Object obj, /*magic for the second param*/)
{
return obj instanceof /*the magical second param*/
}
但是如何为[a classname]
创建参数?有没有办法在没有java.lang.Class
的方法isInstance(Class cls)
的情况下执行此操作?
由于
答案 0 :(得分:5)
Class
中的isAssignableFrom(Class)。它不仅不是isInstance(Class)
,而且还与instanceof
运算符更紧密地工作的方式相匹配。 :)
除此之外,没有,如果没有Class
的那些方法,你就无法做到。
答案 1 :(得分:2)
的动态版本
[object] instanceof [a classname]
将是:
Class.forName("a classname").isAssignableFrom(object.getClass());