問題
Animal クラスを作成します。
name という protected 修飾子を持つインスタンス変数を作成します。
Animal クラスには、name を設定するコンストラクタと、name を取得するメソッドが含まれます。
Dog と Cat というクラスを作成し、それぞれ Animal クラスを拡張します。
Dog と Cat クラスには、親クラスの name を設定するメソッドを作成します。
ヒント
- Animal クラスの作成:
name
というprotected
修飾子を持つインスタンス変数を作成します。name
を設定するコンストラクタと、name
を取得するメソッドを追加します。
- Dog クラスの作成:
Animal
クラスを拡張します。- 親クラスのコンストラクタを呼び出すための処理を含むコンストラクタを作成します。
- 親クラスの
name
を設定するメソッドを作成します。
- Cat クラスの作成:
Animal
クラスを拡張します。- 親クラスのコンストラクタを呼び出すための処理を含むコンストラクタを作成します。
- 親クラスの
name
を設定するメソッドを作成します。
これにより、Animal
クラスが基本となり、Dog
と Cat
クラスがそれを拡張し、親クラスの name
を設定するメソッドを持つことになります。
→解答例