Class.isInstance(Object
obj)的Javadoc
给出了以下定义
assignment compatible:
具体来说,
如果此Class对象表示一个声明的类,则如果指定的Object参数是所表示的类(或其任何子类)的实例,则此方法返回true;否则,此方法返回true
。否则返回false。如果此Class对象表示一个数组类,并且可以通过标识转换或扩展引用转换将指定的Object参数转换为该数组类的对象,则此方法返回true。否则返回false。
如果此Class对象表示一个接口,则如果指定Object参数的类或任何超类实现此接口,则此方法返回true;否则,此方法返回true
。否则返回false。如果此Class对象表示原始类型,则此方法返回false。
基本上,如果类型A扩展或实现类型B,则可以将类型A的对象分配给类型B的变量。



