工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Java

Java instanceof演算子完全ガイド:基本から継承・インターフェースまで

Java instanceof演算子:包括的ガイド

Javaのinstanceof演算子の仕組みを、基本的な使用法、継承、インターフェースをカバーする明確な例で解説します。

Javaにおいて、instanceof演算子は、オブジェクトが特定のクラスやインターフェースに属するかどうかを検証します。オブジェクトの実行時型が指定された型と一致すればtrue、そうでなければfalseを返します。

objectName instanceof className;

以下は、Stringとユーザー定義クラスで演算子を示すシンプルな例です。

例:基本的なinstanceofの使用

class Main { public static void main(String[] args) { String name = "Programiz"; boolean result1 = name instanceof String; System.out.println("name is an instance of String: " + result1); Main obj = new 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

両方のチェックがtrueを返すのは、nameが確かにStringであり、objがMainインスタンスだからです。

注意: Javaでは、Stringはプリミティブではなく参照型です。

継承でのinstanceofの使用

この演算子は、多態的な階層構造を扱う際に不可欠です。サブクラスのインスタンスがスーパークラスの型も満たすことを確認できます。

// スーパークラス class Animal {} // サブクラス class Dog extends Animal {} class Main { public static void main(String[] args) { Dog d1 = new Dog(); System.out.println(d1 instanceof Dog); // true System.out.println(d1 instanceof Animal); // true } }

示されているように、d1はDogであり、かつAnimalでもあると認識され、Javaの継承モデルを反映しています。

インターフェースでのinstanceofの使用

instanceofは、オブジェクトが特定のインターフェースを実装しているかどうかもチェックします。

interface Animal { } class Dog implements Animal { } class Main { public static void main(String[] args) { Dog d1 = new Dog(); System.out.println(d1 instanceof Animal); // true } }

ここでは、d1はAnimalを実装するDogなので、演算子はtrueを返します。

注意: すべてのJavaクラスは最終的にjava.lang.Objectを継承します。したがって、あらゆるオブジェクトはObjectのインスタンスでもあります。例えば:

d1 instanceof Object

これは常にtrueと評価されます。

Java

  1. Javaのfinalキーワード完全解説:変数、メソッド、クラスでの活用法
  2. Java継承のマスター:概念、種類、実践例
  3. Java Staticネストクラスの理解:用法、違い、実例
  4. Java無名インナークラス完全ガイド:定義、構文、実践例
  5. Javaシングルトンパターン完全解説:安全な実装と活用法
  6. Javaリフレクション完全ガイド:実行時のクラス・メソッド・フィールド検査
  7. Java ArrayList完全マスター:操作・メソッド・ベストプラクティス
  8. Java ObjectOutputStream完全ガイド:シリアル化、メソッド、実践例
  9. Javaジェネリクス完全ガイド:再利用可能で型安全なコードの構築
  10. Javaファイル操作のマスター:java.ioによる作成・読み取り・書き込み・削除
  11. Java 9で匿名内部クラスにダイヤモンド演算子対応:コード簡素化