練習問題 解答

1.8 練習問題 解答

問1

① ×:スーパークラスからはいくつでもサブクラスを作成できる。
② ×:サブクラスの継承もとになるスーパークラスは1つだけしか選べない。
③ ×:アクセス修飾子がpublicやprotectedのメンバは利用できるが、privateだと利用できない。
  (紙のテキストだと○になっているかもしれませんが、×が正です)
④ ×:サブクラス内でスーパークラスと同じ定義のメソッドを記述できる。
⑤ ○

問2

① ×:クラスYがクラスXのスーパークラスになる。
② ×:スーパークラスと同じ名前のフィールド変数をサブクラスでも定義できる。
③ ○:引数ありのコンストラクタが必要になる。
④ ○:private変数にはアクセスできないので、その他のアクセス修飾子が設定されている必要がある。
⑤ ○:スーパークラスに同じ名前のメソッドが定義されている必要はない。

問3

① A ② あり ③ B ④ なし
⑤ A ⑥ なし ⑦ B ⑧ あり

問4

➢ TextBooks.java
[html] package jp.co.f1.basic.ch11exercise; public class TextBooks1 extends Books { private String subject; //教科 public String getSubject(){ return this.subject; } public void setSubject(String subject){ this.subject = subject; System.out.println(“この本の教科を” + subject + “にしました。”); } } [/html]

問5

➢ TextBooks2.java
[html] package jp.co.f1.basic.ch11exercise; public class TextBooks2 extends TextBooks1 { public void showBook(){ super.showBook(); System.out.println(“この本の教科は” + super.getSubject() + “です。”); } } [/html]


NEXT>> 第2章 抽象クラスとインタフェース