instanceof, isinstance,isAssignableFrom的区别
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
轉載于:https://www.cnblogs.com/toSeeMyDream/p/6224000.html
總結
以上是生活随笔為你收集整理的instanceof, isinstance,isAssignableFrom的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 医保一个月交多少钱啊?
- 下一篇: Python函数中的参数(一)