Class・Object

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

今の年収に満足していますか?



同じ契約金で業務委託していても

在籍している会社によって給料が違います。


今と同じスキル・業務内容でも

年収が変わるということです。


さらに以下を考慮すると

より年収アップにつながります。


  • スキルセットと需要
  • 経験と実績
  • 業界や地域の市場価値
  • 転職時の交渉スキル


転職先の企業の給与体系や

業界の標準的な給与水準を調査し、

転職前後の給与を比較することができます。


給与のみでなく、

福利厚生やキャリア成長の機会、

ワークライフバランスなどの要素も

総合的に考慮することが重要です。


こちらで転職・年収アップできました👇【エントリーは簡単30秒!】


【ITエンジニア特化LP】転職エージェント





ITエンジニアの知識を効率よく身につけるには?


Kindle Unlimitedは、Amazonが提供する

月額定額制の電子書籍サービスを活用します。


また、Kindle Unlimitedには、

体験版が提供されています。


体験版では、一定期間(通常は30日間)に限り、

Kindle Unlimitedのサービスを

無料で利用することができます。

1.豊富な書籍のラインナップ

Kindle Unlimitedには、

幅広いジャンルの書籍が

数十万冊以上含まれています。


小説、ビジネス書、自己啓発書、

学術書、漫画など、

様々なテーマや興味に合わせて

多彩な選択肢があります。


2.サービスの内容を体験

体験版では、Kindle Unlimitedの

全ての機能を使いながら、

豊富な書籍のラインナップや

読書体験を体験することができます。


自身の読書の好みや

利用頻度に合うかどうかを確認できます。


3.解約が可能

体験版期間中に

Kindle Unlimitedのサービスに

満足しなかった場合、

期限内に解約することができます。


その場合、追加料金はかかりません。



ここで利用できました👇【登録は簡単30秒!】


Kindle Unlimitedの無料体験を始める



Kindle Unlimitedでは

さまざまなジャンルの書籍が提供されています。


ITエンジニアとしてスキルを向上させたり

新しい技術を学んだりする際に、

Kindle Unlimitedは

便利な資源となるのでおすすめです。


SPONSORED LINK

OracleからEclipseに開発主体が移ったJava EE前のページ

Spring MyBatisのSQL!!IN句を使用する方法とは?次のページ

ピックアップ記事

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

関連記事

  1. Class・Object

    Java コンストラクタの使い方と概要

    コンストラクタとは生まれたてのインスタンスの状態を表します。…

  2. Class・Object

    Java クラスのインスタンス化・初期化とは?

    Javaで扱うすべての変数は必ず何らかの型(type)を持っていま…

  3. Class・Object

    Java リスト(list)を分割(一度に処理を行う)し代入する方法を解説

    こちらの記事でリスト(list)を分割(一度に処理を行う)し代入す…

  4. 制御文

    Java Mapで空白でない値を新しいMapに詰め直し、全ての値が空白の場合は-1を返却する方法

    JavaのMapは、キーと値のペアを保持するコレクションです。…

  5. 文字列

    Java リスト内に特定の文字列が含まれているかチェックする方法

    Javaでリスト内に特定の文字列が含まれているかどうかを確認する方…

  6. Class・Object

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

    こちらの記事でファイルやディレクトリの存在チェック(exists)…

コメント

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

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

Recommended Article

Pickup

  1. 日付・時刻

    Java compareToを使用し3つの日付を比較する方法
  2. 文字列

    Java String型とDate型の変換・Calendarの関係性
  3. 文字列

    Java StringBuilderの使い方・文字列の連結
  4. 制御文

    Java 二分探索アルゴリズム(バイナリサーチ)でオブジェクトをJSON形式の文…
  5. JavaScript・TypeScript

    Vue.js 行が選択されたときにボタンを活性化、非活性化にする
PAGE TOP

Copyrighted Image