練習問題 解答
1.8 練習問題 解答
問1
① ×:スーパークラスからはいくつでもサブクラスを作成できる。
② ×:サブクラスの継承もとになるスーパークラスは1つだけしか選べない。
③ ×:アクセス修飾子がpublicやprotectedのメンバは利用できるが、privateだと利用できない。
(紙のテキストだと○になっているかもしれませんが、×が正です)
④ ×:サブクラス内でスーパークラスと同じ定義のメソッドを記述できる。
⑤ ○
問2
① ×:クラスYがクラスXのスーパークラスになる。
② ×:スーパークラスと同じ名前のフィールド変数をサブクラスでも定義できる。
③ ○:引数ありのコンストラクタが必要になる。
④ ○:private変数にはアクセスできないので、その他のアクセス修飾子が設定されている必要がある。
⑤ ○:スーパークラスに同じ名前のメソッドが定義されている必要はない。
問3
① A ② あり ③ B ④ なし
⑤ A ⑥ なし ⑦ B ⑧ あり
問4
➢ TextBooks.java
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 + "にしました。"); } }
問5
➢ TextBooks2.java
package jp.co.f1.basic.ch11exercise; public class TextBooks2 extends TextBooks1 { public void showBook(){ super.showBook(); System.out.println("この本の教科は" + super.getSubject() + "です。"); } }