基本的なことなのですが、javaのメソッドのアクセス制御の覚書を書いてみます
インスタンスからの参照 | オーバーライド | メソッド呼び出し | |
public | ○ | ○ | 同一クラスサブクラス |
デフォルト | 同一パッケージ内のみ○ | 同一パッケージ内のみ○ | 同一クラス同一パッケージ内のサブクラス |
protected | 同一パッケージ内のみ○ | ○ | 同一クラスサブクラス |
private | × | × | 同一クラス |
インスタンスからの参照 | オーバーライド | メソッド呼び出し | |
public | ○ | ○ | 同一クラスサブクラス |
デフォルト | 同一パッケージ内のみ○ | 同一パッケージ内のみ○ | 同一クラス同一パッケージ内のサブクラス |
protected | 同一パッケージ内のみ○ | ○ | 同一クラスサブクラス |
private | × | × | 同一クラス |