Java

Java オブジェクト指向の解説・継承

処理を受け継ぐ「継承」とは
以前作成したクラスと似通ったクラスを作成する場合などに
効率よく作成できる為の思想です。

「継承」

  • 親クラス(スーパークラス)を基に子クラス(サブクラス)を定義できる
  • 共通の処理を引き継ぐことができる
  • 子クラス独自の処理を付け加える事ができる(差分だけ記述)
  • 親クラスに宣言が存在するメソッドを、子クラスで上書き宣言することをオーバーライドという
  • final付きクラスは継承できず、final付きメソッドはオーバライド出来ない
  • 継承には、「抽象的・具体的」の関係にあることを定義する役割もある

SPONSORED LINK

オーバーライド(上書きする事)
親クラスを継承して子クラスを宣言する際、
親クラスのメンバを子クラス側で再定義することです。
オーバーライドについての解説はこちらから

継承の基礎


class サブクラス名 extends スーパークラス名 { クラス本体 }

継承を用いて子クラスに宣言されたメンバについて
①親クラスに同じメンバがなければ、そのメンバは「追加」になる
②親クラスに同じメンバがあれば、そのメンバは「上書き変更」される。

継承されたクラスのメソッドの呼び出し
外部からメソッドの呼び出しがある場合は、
外側に有る子インスタン部分のメソッドで対応します。

例えば両方のクラスで
同じメソッドが定義されている(オーバーライド)場合は
外側(子クラス)のメソッドが優先的に動作する為、
内側(親クラス)のメソッドが動くことはありません。

SPONSORED LINK

親インスタン部へのアクセスの方法

親インスタンス部について

  • 親インスタンス部のフィールドを利用:super.フィールド名
  • 親インスタンス部のメソッドを呼び出す:super.メソッド名(引数)

「祖父母」インスタンス部へのアクセスについて
Aクラス(祖父母)、Bクラス(親)、Cクラス(自分)という
3つのクラスが継承関係にある時
インスタンス生成も3重構造になります。

その際に一番外側に相当するCインスタンスについては、
Cクラスのメソッド→Aクラスのインスタンス部には直接アクセスはできない。

  • Cクラスのメソッド→Cクラスのインスタンス:this
  • Cクラスのメソッド→Bクラスのインスタンス:super
  • Cクラスのメソッド→Aクラスのインスタンス:✕

継承とコンストラクタの関係とルール

全てのコンストラクタは、
先頭で必ず親クラスのコンストラクタを
呼び出さなければなりません。

親クラスのコンストラクタの呼び出し

  • super(引数);

SPONSORED LINK

ピックアップ記事

  1. Java クラスのインスタンス化・初期化とは?
  2. Java 9が正式リリース
  3. Java入門 JavaプラットフォームやJava言語の仕組み

関連記事

  1. Java

    Java入門 JavaプラットフォームやJava言語の仕組み

    改行 プログラミング言語Java本来コンピュー…

  2. Basic

    Java EclipseにTomcat(Java EEの開発環境)を設定する手順

    Java EEの開発に必要なものは、大きく分けて以下の3つになっていま…

  3. Java

    Java 未経験者の転職で有利に!プログラミングスクールがオススメな理由は?比較表で解説!

    経済産業省が発表しているように現在でもIT人材が17万人も不足して…

  4. Java

    Eclipse Javaプロジェクトの作成と初期設定を解説!!ビルド(build)とは?

    Eclipseで初期設定が終わったらProjectを作成していきます。…

  5. Basic

    Java Loggerの使い方や出力先の設定、レベルでログを振り分ける設定も解説

    こちらの記事でLoggerの使い方を応用しています。Java Te…

  6. Java

    JUnit 入門・基本的な使い方

    JUnitは、Javaで開発されたプログラムのふるまいを検証する為…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Recommended Article

Pickup

  1. Java

    Java インストールしたJREとEclipseを連動させる(設定)手順を解説!…
  2. Java

    Java ファイルやディレクトリの存在チェック(exists)とパターンを解説
  3. Java

    Eclipse Java動作環境の構築とインストール
  4. Java

    Java オブジェクト指向の解説・継承
  5. Basic

    Java Loggerの使い方や出力先の設定、レベルでログを振り分ける設定も解説…
PAGE TOP

Copyrighted Image