オペレーターの Java インスタンス
オペレータの Java インスタンス
このチュートリアルでは、例を使用して Java instanceof 演算子について詳しく学習します。
instanceof
Java の演算子は、オブジェクトが特定のクラスのインスタンスであるかどうかを確認するために使用されます。
その構文は
objectName instanceOf className;
ここで、objectName の場合 className のインスタンスです 、演算子は true
を返します .それ以外の場合は、false
を返します .
例:Java インスタンス
class Main {
public static void main(String[] args) {
// create a variable of string type
String name = "Programiz";
// checks if name is instance of String
boolean result1 = name instanceof String;
System.out.println("name is an instance of String: " + result1);
// create an object of Main
Main obj = new Main();
// checks if obj is an instance of Main
boolean result2 = obj instanceof Main;
System.out.println("obj is an instance of Main: " + result2);
}
}
出力
name is an instance of String: true obj is an instance of Main: true
上記の例では、変数 name を作成しました。 String
の タイプとオブジェクト obj メインの クラス。
ここでは、instanceof
を使用しました。 name かどうかをチェックする演算子 と obj String
のインスタンスです そしてメイン クラス。そして、演算子は true
を返します
注意 :Java では、String
プリミティブ データ型ではなくクラスです。詳細については、Java 文字列をご覧ください。
継承中の Java インスタンス
instanceof
を使用できます 演算子を使用して、サブクラスのオブジェクトがスーパークラスのインスタンスでもあるかどうかを確認します。たとえば、
// Java Program to check if an object of the subclass
// is also an instance of the superclass
// superclass
class Animal {
}
// subclass
class Dog extends Animal {
}
class Main {
public static void main(String[] args) {
// create an object of the subclass
Dog d1 = new Dog();
// checks if d1 is an instance of the subclass
System.out.println(d1 instanceof Dog); // prints true
// checks if d1 is an instance of the superclass
System.out.println(d1 instanceof Animal); // prints true
}
}
上記の例では、サブクラス Dog を作成しました。 スーパークラス Animal から継承する .オブジェクト d1 を作成しました 犬の クラス。
print ステートメント内の式に注目してください。
d1 instanceof Animal
ここでは、instanceof
を使用しています。 d1 かどうかをチェックする演算子 スーパークラス Animal のインスタンスでもあります .
インターフェイスの Java インスタンス
instanceof
演算子は、クラスのオブジェクトがクラスによって実装されたインターフェースのインスタンスでもあるかどうかを確認するためにも使用されます。たとえば、
// Java program to check if an object of a class is also
// an instance of the interface implemented by the class
interface Animal {
}
class Dog implements Animal {
}
class Main {
public static void main(String[] args) {
// create an object of the Dog class
Dog d1 = new Dog();
// checks if the object of Dog
// is also an instance of Animal
System.out.println(d1 instanceof Animal); // returns true
}
}
上記の例では、犬 Animal を実装するクラス インターフェース。 print ステートメント内の式に注目してください。
d1 instanceof Animal
ここで、d1 犬のインスタンスです クラス。 instanceof
演算子は d1 かどうかをチェックします インターフェイス Animal のインスタンスでもあります .
注意 :Java では、すべてのクラスが Object
から継承されます。 クラス。したがって、すべてのクラスのインスタンスは Object
のインスタンスでもあります クラス。
前の例でチェックすると、
d1 instanceof Object
結果は true
になります .
Java