您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關java中instanceof運算符的作用是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
Java中的集合主要分為四類:1、List列表:有序的,可重復的;2、Queue隊列:有序,可重復的;3、Set集合:不可重復;4、Map映射:無序,鍵唯一,值不唯一。
1、概念
該運算符用于操作對象的例子,檢查對象是否為特定類型(類型或接口類型)。
2、格式
( Object reference variable ) instanceof (class/interface type)
如果計算器左側變量所指的對象是操作器右側類或接口的對象,則結果是真實的。
3、實例
package com.verify_instanceof; public class TestInstanceOf { public static void main(String[] args) { //下面四行代碼用來證明:instanceof運算符是判斷對象變量中存放的引用的所屬類是否與指定類相同,或者為指定類的后代類;而不是判斷對象變量的所屬類是否為指定類,或指定類的后代類 A a1 = null; RootInterface ra = new A(); System.out.println("a1 instanceof A:"+(a1 instanceof A));//null不是A類的實例對象,也不是A類的后代類的實例對象,故返回結果為false; System.out.println("ra instanceof RootInterface:"+(ra instanceof RootInterface));//true,原因在于對象變量ra中存放的引用的所屬類為類A,而類A實現了接口RootInterface,可以理解為類A是接口RootInterface的子類 System.out.println("ra instanceof A:"+(ra instanceof A));//對象變量ra中存放的引用的所屬類為A類,故返回結果為true; //下面的代碼用于驗證只要對象變量中存放的引用的所屬類是指定類或者是指定類的后代類,結果就為true;反之,結果為false; RootInterface rb = new B(); RootInterface rc = new C(); System.out.println("rb instanceof A:"+(rb instanceof A));//true,原因在于對象變量rb中存放的是類B的實例對象的引用,而指定類為類A,類B為類A的直接后代類,故返回true System.out.println("rb instanceof B:"+(rb instanceof B));//true,原因在于對象變量rb中存放的是類B的實例對象的引用,而指定類就是類B,兩個類為同一個類,故返回true System.out.println("rc instanceof A:"+(rc instanceof A));//true,原因在于對象變量rc中存放的是類C的實例對象的引用,而指定類為類A,類C為類A的間接后代類,故返回true System.out.println("rb instanceof C:"+(rb instanceof C));//false,原因在于對象變量rb中存放的是類B的實例對象的引用,而指定類為類C,類B不是類C的后代類,故返回false } }
關于java中instanceof運算符的作用是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。