示例:Class1.isAssignableFrom(Class2)
解釋:① 判斷Class1和Class2是否相同。②Class1是否是Class2的父類或者接口。
instanceof
示例:object instanceof TypeName
解釋:判斷一個對象實例是否是一個類或接口的或其子類子接口的實例。
public class TestCase {
public static void main(String[] args) {
TestCase test = new TestCase();
test.testIsAssignedFrom1();
test.testIsAssignedFrom2();
test.testIsAssignedFrom3();
test.testInstanceOf1();
test.testInstanceOf2();
}
public void testIsAssignedFrom1() {
System.out.println(String.class.isAssignableFrom(Object.class)); // false
}
public void testIsAssignedFrom2() {
System.out.println(Object.class.isAssignableFrom(Object.class)); // true
}
public void testIsAssignedFrom3() {
System.out.println(Object.class.isAssignableFrom(String.class)); // true
}
public void testInstanceOf1() {
String ss = "";
System.out.println(ss instanceof Object); // true
}
public void testInstanceOf2() {
Object o = new Object();
System.out.println(o instanceof Object); // true
}
}
原帖地址:http://lucky16.iteye.com/blog/1631253