練習問題 解答

1.8 練習問題 解答

問1

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

問2

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

問3

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

問4

➢ TextBooks.java

1package jp.co.f1.basic.ch11exercise;
2 
3public class TextBooks1 extends Books {
4    private String subject; //教科
5 
6    public String getSubject(){
7        return this.subject;
8    }
9 
10    public void setSubject(String subject){
11        this.subject = subject;
12        System.out.println("この本の教科を" + subject + "にしました。");
13    }
14}

問5

➢ TextBooks2.java

1package jp.co.f1.basic.ch11exercise;
2 
3public class TextBooks2 extends TextBooks1 {
4public void showBook(){
5        super.showBook();
6        System.out.println("この本の教科は" + super.getSubject() + "です。");
7    }
8}


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

f