instanceof用法詳解以及注意事項


instanceof
instanceof是Java的一個保留關鍵字,左邊是對象,右邊是類,返回類型是Boolean類型。它的具體作用是測試左邊的對象是否是右邊類或者該類的子類創建的實例對象,是,則返回true,否則返回false。

instanceof使用注意事項
先有繼承關系,再有instanceof的使用。
當該測試對象創建時右邊的聲明類型和左邊的類其中的任意一個跟測試類必須得是繼承樹的同一分支或存在繼承關系,否則編譯器會報錯。
instanceof使用示例:

點擊查看代碼
public class Application {

  public static void main(String[] args) {

    // Object > Person > teacher
    // Object > Person > Student
    // Object > String
    Object o = new Student(); // 主要看這個對象是什么類型與實例化的類名
    // instanceof關鍵字可以判斷左邊對象是否是右邊類或者子類的一個實例
    System.out.println(o instanceof Student); // o 是Student類的一個實例對象 所以判斷右邊類跟student有無關系 以及顯示聲明有無關系
    System.out.println(o instanceof Person); // true
    System.out.println(o instanceof Object); // true
    System.out.println(o instanceof String); // false
    System.out.println(o instanceof Teacher); // 無關系
    System.out.println("========================");
    Person person = new Student();
    System.out.println(person instanceof Person); // true
    System.out.println(person instanceof Object); // true
    // System.out.println(person instanceof String); // 編譯錯誤
    System.out.println(person instanceof Teacher); // 無關系

  }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM