privateの代わりにprotectedを用いると、
クラス内とサブクラスからのみアクセスを許すフィールドを作ることができます。
####「public」「protected」「private」「デフォルト(何もつけない)」アクセス権について
・public: どこからでもアクセス可能
・protected: そのクラスと子クラス内からのみアクセス可能
・private: そのクラス内からのみアクセス可能(クラス外からのアクセスにはゲッター&セッターが必要)
・デフォルト修飾子:ある要素に何も指定しなかった場合、その要素のアクセスはデフォルトとみなされ、同じパッケージ内のクラスから利用可能になります。
アクセス権 | public | protected | private | デフォルト |
---|---|---|---|---|
クラス内 | ○ | ○ | ○ | ○ |
サブクラス内 | ○ | ○ | × | × |
クラス,サブクラスの外 | ○ | × | × | × |