Java 17 Silver ・ 4. クラスの定義とインスタンスの使用
アクセス修飾子の使用 の練習問題と解説
Java 17 Silver ラボ の「4. クラスの定義とインスタンスの使用 › アクセス修飾子の使用」の問題 6 問を載せています。問題を開くと、正解と選択肢ごとの解説が読めます。
アクセス修飾子の使用 について
public・protected・修飾子なし・private の 4 段階で、メンバをどこから使えるかが決まります。その範囲と、カプセル化やファイル名との関係を扱います。
公開範囲は public (どこからでも) > protected (同じパッケージとサブクラス) > 修飾子なし (同じパッケージだけ) > private (同じクラスだけ) の順です。private は「同じクラスの中」が単位なので、同じクラスであれば別のインスタンスの private フィールドにもアクセスできます。
コンストラクタを private にすると、クラスの外から new できなくなります。public なトップレベルのクラスは 1 つのファイルに 1 つまでで、ファイル名と同じ名前にしなければいけません。フィールドを private にしてメソッド経由でだけ操作させるのが、カプセル化の基本の形です。
問題 (6 問)
- 別のクラスの private フィールド
- 同じクラスの別インスタンスの private
- 同じパッケージから protected を使う
- private なコンストラクタ
- カプセル化
- public クラスとファイル名
広告