オブジェクト指向アプローチ論 第9回その2
このページは,2007年前期まで実施されていた科目の補助教材ページです。既に履修し終わった方々
の参考のために公開を継続しています。したがって,内容が古いままのものが残っておりますので注意
して下さい。


※2007年度より実施されている2年生選択科目「オブジェクト指向プログラミングa」のページはここ
 ではありません。「オブジェクト指向プログラミングa」のページはこちらです。


●クラスの継承 (中編)「Javaを学ぶ 第11回 (2003年3月 )」

【前回の復習】

●継承とは
List 1



●メソッドオーバライドを使う
List 2


●ワープロソフトでの継承例
List 3, List 4, List 5, List 6



【スーパークラスメンバの参照】
・スーパークラスのメンバ名とサブクラスのメンバ名が同じになってしまう場合は,サブクラスのメンバの方が使われる。
 ただし,
  super.メンバ名
 という形で,スーパークラスのメンバを利用することができる。
List 7



【継承とコンストラクタ】
・サブクラスのオブジェクトのコンストラクタを呼ぶと,まずはスーパークラスのコンストラクタ
 が自動で呼ばれて,スーパークラスから継承されている部分が初期化され,その後,サブクラス
 のコンストラクタが動き出して,サブクラス独自のメンバを初期化していく。
・スーパークラスに複数のコンストラクタがある場合は,自分で特定のコンストラクタを,
  super(実引数);
 という形で呼び出せる。その場合,必ずコンストラクタの一番最初でスーパークラスのコンスト
 ラクタを呼び出さなければならない。
List 8, List 9



【多段階の継承】
・継承は多段階で行うことが出来る。
List 10



【すべてのスーパークラスObject】
【キャスト演算子による型変換】
・スーパークラスが指定されていないクラスは,すべてObjectというJavaにもともと備わっている特別なクラスの
 サブクラスとなる。
List 11



【protectedアクセス特性】
・protectedというアクセス指定を受けたメンバは,
  (1)そのクラスの中から
  (2)同一パッケージの中から
  (3)そのクラスのサブクラスの中から
 しかアクセスできない。(アクセス指定をしない場合に(3)が加わった形)
List 12, List 13