練習問題 解答

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() + "です。");
	}
}


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