1. 程式人生 > >Java SE關鍵字——instanceof

Java SE關鍵字——instanceof

instanceof 嚴格來說是Java中的一個雙目運算子,用來測試一個物件是否為一個類的例項,用法為:

boolean result = obj instanceof Class

其中 obj 為一個物件,Class 表示一個類或者一個介面,當 obj 為 Class 的物件,或者是其直接或間接子類,或者是其介面的實現類,結果result 都返回 true,否則返回false。
  注意:編譯器會檢查 obj 是否能轉換成右邊的class型別,如果不能轉換則直接報錯,如果不能確定型別,則通過編譯,具體看執行時定。
一 obj 必須為引用型別,不能為基本型別 
在這裡插入圖片描述
二 obj 為null
在這裡插入圖片描述


null是可以成為任意引用型別的特殊符號,在JavaSE規範中對instanceof運算子的規定,如果obj是null 則返回false。