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

Java 継承完全ガイド:種類、構文、実践例

継承とは?

継承 は、あるクラスが別のクラスのフィールドとメソッドを獲得できるコアなオブジェクト指向概念です。子供が親から特徴を受け継ぐのと似ています。既存コードを再利用することで、再利用性を高め、保守を簡素化します。

このガイドでは以下をカバーします:

継承の種類

Java はさまざまな継承パターンをサポートし、それぞれ異なる設計ニーズに適しています。

単一継承

1つのクラスが別のクラスを拡張し、シンプルな親子関係を形成します。

Java 継承完全ガイド:種類、構文、実践例
クラス B がクラス A を拡張。

多重継承

Java 自体はクラスの多重継承を許可しませんが、インターフェースを使用する際に概念を理解しておくと役立ちます。

Java 継承完全ガイド:種類、構文、実践例
クラス C がクラス A とクラス B の両方を拡張(概念図)。

多段階継承

継承チェーンは複数レベルにわたることがあります:サブクラスがさらに別のクラスのスーパークラスになることができます。

Java 継承完全ガイド:種類、構文、実践例
クラス C が B を拡張し、B が A を拡張。

階層的継承

1つのスーパークラスが複数のサブクラスを生み出せます。

Java 継承完全ガイド:種類、構文、実践例
クラス B、C、D がすべてクラス A を拡張。

ハイブリッド継承

ハイブリッド継承は単一継承と多重継承のパターンを組み合わせたものです。Java はクラスに対して直接サポートしませんが、インターフェースを使用して複雑な階層を設計する際に概念は有用です。

Java 継承完全ガイド:種類、構文、実践例
クラス D がクラス B とクラス C から継承し、両方がクラス A を拡張。

注意: Java はクラスに対するハイブリッド継承と多重継承をサポートしません。

Java における継承

Java では、Is-A 関係が継承によって表現されます。extends キーワードは、サブクラスがスーパークラスから継承することを示します。

典型的な構文:

class SubClass extends SuperClass {
    // メソッドとフィールド
}

Java 継承の例

以下は継承の動作を示す簡潔な例です。

Java 継承完全ガイド:種類、構文、実践例
Java 継承の例
class Doctor {
    void doctorDetails() {
        System.out.println("Doctor Details...");
    }
}
class Surgeon extends Doctor {
    void surgeonDetails() {
        System.out.println("Surgeon Detail...");
    }
}
public class Hospital {
    public static void main(String[] args) {
        Surgeon s = new Surgeon();
        s.doctorDetails();
        s.surgeonDetails();
    }
}

super キーワードの使用

super キーワードはスーパークラスのメンバーへのアクセスを提供し、this の親クラス版に相当します。

変数、メソッド、コンストラクタで使用できます。

構文例:

super.methodName();

実践シナリオ:銀行アプリケーション

複数の口座タイプをサポートする銀行アプリケーションを考えてみましょう。構造化アプローチでは、deposit や withdraw などの共通アクションのために個別の関数を書きます。

Java 継承完全ガイド:種類、構文、実践例

OOP では、共有振る舞いを含む基底 Account クラスを定義し、特定の口座タイプで拡張します。

Java 継承完全ガイド:種類、構文、実践例
構造化アプローチ:deposit と withdraw に別々の関数。
Java 継承完全ガイド:種類、構文、実践例
OOP アプローチ:サブクラス化で重複を削減。

オーバードラフト機能の追加

オーバードラフト機能の要件が追加されたとき、構造化コードでは既存関数の変更が必要です。一方、OOP ではテスト済みの基底コードに触れずに、独自の withdraw ロジックを実装した新しいサブクラスを作成できます。

Java 継承完全ガイド:種類、構文、実践例
Java 継承完全ガイド:種類、構文、実践例
構造化アプローチ:既存の withdraw 関数を修正。
Java 継承完全ガイド:種類、構文、実践例
OOP アプローチ:オーバードラフト口座用の新サブクラスを追加。

クレジットカード口座の追加

同様に、独自の預け入れルールを持つクレジットカード口座の導入も OOP なら簡単です:基底クラスを拡張して特殊な振る舞いを持つ新しいサブクラスを作るだけです。

Java 継承完全ガイド:種類、構文、実践例
Java 継承完全ガイド:種類、構文、実践例
構造化アプローチ:既存の預け入れロジックを調整。
Java 継承完全ガイド:種類、構文、実践例
OOP アプローチ:カスタム預け入れロジックを持つ新サブクラスを作成。

OOP における継承のメリット

継承は共有ロジックを親クラスに配置することでコード重複を排除します。子クラスは deposit と withdraw メソッドを継承し、保守オーバーヘッドを削減します。

Java 継承完全ガイド:種類、構文、実践例
Java 継承完全ガイド:種類、構文、実践例

Java

  1. C#インターフェース完全解説:定義、実装例、実践的活用法
  2. Java継承のマスター:概念、種類、実践例
  3. Java OOP概念:基礎、実例、利点を徹底解説
  4. OOPにおける抽象化マスター:Java抽象クラス&メソッド完全解説
  5. Javaカプセル化完全ガイド:実践例で理解するデータ隠蔽とアクセサ
  6. Java String.length()メソッド:文字列サイズ取得の実例解説
  7. Java String.charAt()完全解説:構文、戻り値、例外、実例
  8. Java String.contains()メソッド:部分文字列チェックの実践例
  9. Java String.endsWith()マスター:文字列サフィックスチェック実例付き
  10. Java BufferedReader でファイル読み込み:実践ガイドと例
  11. Javaで挿入ソート:わかりやすい例とステップバイステップガイド