子クラス内のプライベート変数を変更するプライベート保護レベルは、プライベート親変数にアクセスする子を停止することを意図していることを理解しています。アクセサーとミューテーター(getおよびset)でそれを行う方法はありませんか?それは宿題であるため、私はプライベート文字列を変更する何らかの方法を持っている必要があります。名前のプライベート文字列を持つパブリック抽象ペットクラスがあります。犬を作成し、その文字列名を使用します。私はそれを理解することはできません。宿題だから、コードなど何も与えられないことを理解していますが、誰かがこれを行う方法を指摘してグーグルで検索できますか?私の検索はすべて、不可能であることを暗示しています。これが役立つ場合のコードを次に示します。保護することはできません。1明確で正確な理解があることを確認しましょう。多くの初心者は微妙な虚偽を教えられています。variables.これは、機能の意図の正しい要約です。基本的に、アクセス制御修飾子はアクセスを制御するためのものであると言っていますが、これは驚くべきことではありません。ここで指摘したい2つの微妙な点があります。1つ目は、アクセス修飾子が、物ではなく物の名前へのアクセスを制御することです。そのメンバーのアクセシビリティドメイン内からそのメンバーを参照するためにのみ使用できます。「アクセシビリティドメイン」は、プログラムテキストの領域です。プライベートメンバーのアクセシビリティドメインは、メンバーを宣言するタイプのテキストです。メンバーを参照するその他方法を考え出した場合、そのメカニズムはアクセシビリティ修飾子によって制御されません。アクセシビリティ修飾子が制御するのは、プログラムのテキストで名前が使用される可能性があるだけです。頭の中ではっきりしていることを確認してください。メンバーは「子」にアクセスできません。これは、派生クラスを意味すると想定しています。派生クラスが名前でプライベートメンバーにアクセスできる場合があります。これまでに述べたことを考えると、それが何であるかを推測できるはずです。考えてから読み進めてください。アクセシビリティドメイン内で名前で使用されます。すべてのプライベートメンバーにアクセスできます。これは、C#の「上級者向け」機能であり、ほぼ確実に講師が求めているものではありません。これは非常に強力な手法であり、頻繁に使用するので、後のキャリアのために覚えておいてください。「ファクトリーパターン」について学習するときは、基本クラス内に派生クラスを配置することがファクトリーパターンを適切に機能させるための良いトリックであるという知識を後部ポケットから引き出すことができます。(2)プライベートメンバーのアクセサーメカニズムを作成し、そのアクセサーメカニズムの名前を保護、内部、またはパブリックにします。通常、プロパティを使用します。次のように、C#で読み取り専用アクセサーを使用してプロパティを作成します。}}または、より新しいバージョンのC#では、次の短い形式を使用できます。アクセシビリティドメイン外にあるため。制限のないアクセシビリティドメインがあるため、itはどこでも使用できます。これは読み取り専用のアクセサーです。書き込みアクセサーを作成するには、セッターを追加します。プロパティに割り当てられる値である名前。アクセサーを作成する方法は他にもありますが、これが断然最も一般的です。コードを読みやすくするための単なる任意の規則です。ボイドリターン?きっと何らかの情報を返すはずです。安全な継承のためにクラスを設計することを心配する必要はありません。これは、変数がそのクラス内でおよび派生クラスインスタンスからアクセス可能であることを意味します。