java中的instanceof用法

2021-06-26 01:50:51 字數 526 閱讀 6981

乙個類的物件可以轉換成繼承鏈中的另乙個類的物件。在進行物件轉換時必須注意:

1)乙個子類物件的型別可以向上轉換,即乙個子類可以轉換成它的父類。這種轉換是安全的,因為子類中含有父類的資訊,子類是父類的乙個超集。轉換的結果是丟失子類中新定義的資訊。

2)乙個父類物件的型別一般來說是不可以向下轉換成它的子類,即乙個父類物件一般不能做子類物件使用,因為這種轉換是不安全的,子類中有的資訊父類中不一定全有。但是有一種情況例外,如果乙個父類的引用實際引用的是子類物件,就可以用強制型別轉換將這個父類轉換成子類型別。

在將乙個父類型別轉換成子類型別時,必須保證其引用實際引用必須是該子類的乙個物件,否則會在執行時發生錯誤,丟擲異常。為防止這種情況發生,可以使用instanceof運算子。instanceof運算子是判斷變數是否是其所屬型別。其使用格式如下:

物件  instanceof  引用型別

例如:b1 instanceof a//返回true

a1 instanceof b//返回true

a1 instanceof c//返回false

你真的了解Java中的Instanceof嗎?

instanceof 是乙個簡單的二元操作符,它是用來判斷乙個物件是否是乙個類例項的 boolean b1 sting instanceof object b1為true因為string是object的子類 boolean b2 new string instanceof string b2為tru...

你真的了解Java中的Instanceof嗎?

instanceof 是乙個簡單的二元操作符,它是用來判斷乙個物件是否是乙個類例項的 boolean b1 sting instanceof object b1為true因為string是object的子類 boolean b2 new string instanceof string b2為tru...

在js中 typeof和instanceof的區別

typeof與instanceof都是用來判斷資料型別的,返回值是否為空等情況,但是他們具體的情況該如何區分?1.首先兩者返回的值不同。typeof返回的值是乙個字串,而,instanceof返回的是布林型別的值,判斷是true或者false。typeof返回的型別有 number,boolean,...