0

それで、あなたはどう思いますか?

私の Java 講師は、プロパティは常に非公開であると宣言する必要があり、それ以外の方法で宣言する必要はないと言いました。私はすぐに、継承がそれにどのように影響するかを考え始めました。

4

2 に答える 2

2

フィールドがプライベートであると宣言するということですか?もしそうなら、私はあなたの講師に同意しますが、「理由がない」は少しやり過ぎかもしれません. 入れ子になったプライベート クラスなど、非プライベート フィールドを使用する理由が非常にまれにあります。

しかし、はい、単純なスーパークラス/サブクラスの関係では、フィールドを保護する代わりにゲッター/セッターを使用します。クラスによって公開されるAPIから実装を分離し、そのサブクラスにさえも分離します。

于 2011-02-07T14:46:42.117 に答える
0

Private は、元のクラスを拡張するクラスが直接アクセスするのを防ぎます。一般的に言えば、元のクラスを拡張し、継承クラスがその特定のクラス メンバーを直接変更できるようにする場合は、変数を宣言するのに protected の方が適していると思います。

于 2011-02-07T14:47:30.070 に答える