instanceofはオブジェクトが特定のクラスまたはインターフェースのインスタンスかどうかをチェックするために使用されます。
Java の演算子 instanceof は、オブジェクトが特定の型またはそのサブタイプのインスタンスであるかどうかを調べるために使用されます。つまり、オブジェクトが別のクラスのインスタンスであるか、そのサブクラスのインスタンスであるかどうかを判定します。
instanceofの構文は次のとおりです。
object instanceof type
ここで、object は検査対象のオブジェクトであり、typeは検査対象の種類またはクラスです。
インスタンスofの機能には以下が含まれます。
- 型の検査:オブジェクトが特定の型に所属しているかをチェックするには、instanceofを使用できます。たとえば、
- if (obj instanceof String) { System.out.println(“obj は文字列です”); }
- 多態の判定:instanceofを使って、あるオブジェクトが自身の親クラスやインターフェースのインスタンスかどうかを調べられます。たとえば:
- if (obj instanceof Animal) {
System.out.println(“objはAnimalクラスです。”);
} - 多態性に対応するための手段として、オブジェクトの種類によって異なる処理を実行する場合に使用されます。
instanceofはオブジェクトの実行時型を調べます。そうでない宣言型ではありません。したがって、オブジェクトがその型のサブクラスのインスタンスの場合は、それでもtrueを返します。