Java中isAssignableFrom和instanceof

isAssignableFrom
示例: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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章