014 継承(protected修飾子) 019 問題

問題

複数のパッケージを作成します。mypackage1とmypackage2の2つのパッケージがあります。
MyClassというクラスをmypackage1に作成し、protectedなメソッドや変数を追加します。
mypackage2内の別のクラスからmypackage1のMyClassのprotectedメンバーにアクセスし、結果を表示します。

ヒント

Javaでは、同じパッケージ内であっても、protectedメンバーには直接アクセスできません。ただし、サブクラスを介してアクセスすることができます。以下は、mypackage1mypackage2の2つのパッケージがあり、MyClassクラスがmypackage1にあり、その中にprotectedメソッドや変数がある場合の一般的な手順です。

  1. mypackage1内のMyClassでprotectedメソッドや変数を作成します。
  2. mypackage2内の別のクラスで、mypackage1MyClassを継承します。
  3. 継承したクラス内で、mypackage1MyClassのprotectedメンバーにアクセスします。

注意すべきは、同じパッケージ内でもprotectedメンバーへの直接アクセスは許可されないが、サブクラスを通じてのアクセスは可能であるという点です。

解答例

「014 継承」問題集リスト