JavaRush /Java Blog /Random-JA /インスタンス演算子
articles
レベル 15

インスタンス演算子

Random-JA グループに公開済み
演算子 を使用するとinstanceof、オブジェクトがどのクラスから来たかを調べることができます。この演算子には 2 つの引数があります。左側はオブジェクトへの参照、右側はオブジェクトの互換性がチェックされる型の名前です。例えば: インスタンスオブ演算子 - 1
Parent р = new Child(); // проверяем переменную р типа Parent
//на совместимость с типом Child print(p instanceof Child);
結果はtrueになります。したがって、演算子はinstanceof参照の型には依存せず、参照先のオブジェクトのプロパティに依存します。ただし、この演算子は、オブジェクトの派生元の型に対してのみ true 値を返すわけではありません。すでに宣言されているクラスにもう 1 つ追加しましょう。
// Объявляем новый класс и наследуем
// его от класса Child
class ChildOfChild extends Child {}
次に、新しい型の変数を作成しましょう。
Parent p = new ChildOfChild();
print(p instanceof Child);
最初の行では、 型の変数を宣言しますParent。この変数は、 から派生したオブジェクトへの参照で初期化されますChildOfChild。2 行目のステートメントは、instanceof型参照Parentと classの互換性を分析しますChildが、関連するオブジェクトは最初のクラスからも 2 番目のクラスからも派生していません。ただし、このオブジェクトの派生元のクラスは を継承するため、演算子はtrueChildを返します。 オリジナルソースへのリンク:オペレーターinstanceof
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION