Java では、アクセスを保護し、改ざんを防ぐために、クラスのインスタンス変数はプライベートとして宣言されることがよくあります。
継承によってプライベート アクセス制限は無効になりません。
サブクラスがそのスーパークラスのすべてのメンバーを継承した場合でも、プライベートとして宣言されたメンバーにはアクセスできません。
たとえば、TwoDShape で幅と高さがプライベートとして宣言されている場合、Triangle サブクラスはそれらにアクセスできません。
Triangle クラスは、TwoDShape ではプライベートである幅と高さにアクセスしようとし、アクセス違反を引き起こすため、コンパイルされません。
プライベート変数には、それが宣言されたクラスのメンバーのみがアクセスできます。サブクラスはこれらの変数にアクセスできません。
これは制限のように見えるかもしれませんが、アクセサー メソッドを使用して問題を回避することができます。
アクセサー メソッドを使用すると、プライベート変数への制御されたアクセスを提供できます。
以下は、幅と高さのアクセサー メソッドを使用するように TwoDShape と Triangle を変更する方法の例です。
以上がメンバーのアクセスと継承の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。