instanceof運算符只被用於對象引用變量,檢查左邊的被測試對象是不是右邊類或接口的實例化。如果被測對象是null值,則測試結果總是false。
形象地:自身實例或子類實例 instanceof 自身類 返回true
例:String s=new String("javaisland");
System.out.println(s instanceof String); //true
Class類的isInstance(Object obj)方法,obj是被測試的對象,如果obj是調用這個方法的class或接口的實例,則返回true。這個方法是instanceof運算符的動態等價。
形象地:自身類.class.isInstance(自身實例或子類實例) 返回true
例:String s=new String("javaisland");
System.out.println(String.class.isInstance(s)); //true
Class類的isAssignableFrom(Class cls)方法,如果調用這個方法的class或接口與參數cls表示的類或接口相同,或者是參數cls表示的類或接口的父類,則返回true。
形象地:自身類.class.isAssignableFrom(自身類或子類.class) 返回true
例:System.out.println(ArrayList.class.isAssignableFrom(Object.class)); //false
System.out.println(Object.class.isAssignableFrom(ArrayList.class)); //true
instanceof, isinstance, isAssignableFrom 區別
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Cannot get a connection, pool error Timeout waiting for idle object
weiyongliang813
2019-02-23 00:25:00
ASP網站Server object error的解決辦法
inveis
2019-02-22 23:49:33
MySQL 事務、函數、觸發器、數據庫備份、權限管理
死瘦宅
2019-02-24 22:35:12
Spring Cloud Alibaba基礎教程:支持的幾種服務消費方式(RestTemplate、WebClient、Feign)
程序猿dd
2019-02-24 10:41:27
mongo php類
wjp13671142513
2019-02-23 13:37:36
單例模式
woaijishu_2011
2019-02-22 23:40:01
div標籤中 id和 class的區別
wjgdu
2019-02-22 23:39:04
組策略之(1)-------組策略對象建立管理與命名
czq2008sky
2019-02-23 13:38:34
String的疑惑-String對象在內存中的位置
cfan_haifeng
2019-02-23 12:56:26
javaScript創建對象
web全棧知識
2019-02-22 23:56:26
Document對象介紹
adai6666
2019-02-22 23:39:28