使用運算符
instanceof
,您可以找出物件來自哪個類別。此運算符有兩個參數。左邊是物件的引用,右邊是檢查物件相容性的類型的名稱。例如:
Parent р = new Child(); // проверяем переменную р типа Parent
//на совместимость с типом Child print(p instanceof Child);
結果將是真實的。因此,運算子instanceof
不依賴引用的類型,而是依賴它所引用的物件的屬性。但此運算子不僅傳回派生物件的類型的真值。讓我們在已經聲明的類別中再新增一個:
// Объявляем новый класс и наследуем
// его от класса Child
class ChildOfChild extends Child {}
現在讓我們建立一個新類型的變數:
Parent p = new ChildOfChild();
print(p instanceof Child);
第一行宣告一個類型為 的變量Parent
,該變數使用對派生自 的物件的參考進行初始化ChildOfChild
。第二行,該語句分析了類型引用與類別instanceof
的兼容性,所涉及的物件既不是從第一個類別也不是從第二個類別派生的。但是,該運算子將傳回true,因為派生該物件的類別繼承自. 原始來源連結:Operator instanceofParent
Child
Child
GO TO FULL VERSION