×
クラスとオブジェクト
アクセス修飾子の制限強度は「private > 指定なし > protected > public」の順に緩やかになります。 トップレベルのクラス(一番外側のクラス)に指定できるアクセス修飾子は「public」または「指定なし(package-private)」の2種類のみであり、トップレベルクラスを private や protected に指定することはできません(コンパイルエラー)。 また、メソッドをオーバーライドする際、子クラス側のメソッドのアクセス修飾子は「親クラスのアクセス修飾子と同等か、より緩やかな範囲」にしか設定できないという厳格なルールが存在します。例えば、親で protected なメソッドを子で private や指定なしに制限してオーバーライドすることはできません。

試験でのポイント

Java Silver試験では、アクセス修飾子違反によるコンパイルエラーを見抜く問題が頻出します。 1. protectedの異パッケージ参照:パッケージが異なる子クラスから protected メンバにアクセスする場合、「子クラス自身のインスタンス(または子クラスの型)」経由でしかアクセスできません。親クラスの型の変数経由でアクセスしようとするとコンパイルエラーになります。 2. オーバーライド時のアクセス可視性の縮小禁止:親クラスが public のメソッドを、子クラスで void method()(指定なし)としてオーバーライドすると、可視性を狭めたためコンパイルエラーになります。 3. トップレベルクラスへのprivate付与:private class Test {} はコンパイルエラーになります。

関連する用語

アクセス制御の主目的である「カプセル化」や、クラスをグループ化する「パッケージとインポート」、アクセス制限が引き継がれる「継承」や「オーバーライド」はアクセス修飾子とセットで出題されます。

ファクトチェック:1Z0-825-JPN(2026-08-01確認)。試験番号1Z0-825-JPN、試験時間90分、60問、合格ライン65%です。

この記事は公式出題範囲・チェックリストとの対応を編集部で確認した学習解説です。

公式資料

用語集一覧 / ← 前の記事 / 次の記事 →