C# の Friend キーワード
オブジェクト指向プログラミングでは、「friend」キーワードにより、プライベート クラス メンバーに特定のクラスへの制御されたアクセスが提供されます。 C には "friend" キーワードが用意されていますが、C# にはこの機能に直接相当する機能がありません。
代替: InternalsVisibleTo
C# は InternalsVisibleTo 属性を利用して、プライベートへの限定的なアクセスを実現します。主にテスト目的のメンバー。この属性は、アセンブリまたは名前空間を信頼できるものとして指定し、外部コードからは隠されている内部メンバーにアクセスできるようにします。
例
AssemblyInfo.cs の次の例を考えてみましょう。 :
[assembly: InternalsVisibleTo("OtherAssembly")]
この属性により、アセンブリが「OtherAssembly」にアクセスできるようになります。アセンブリ内で内部としてマークされたメソッドまたはプロパティは、「OtherAssembly」からアクセスできるようになります。
テストでの使用法
InternalsVisibleTo 属性は、単体テストで特に役立ちます。シナリオ。アセンブリをテスト アセンブリに対して InternalsVisibleTo としてマークすると、プライベート メンバーは他の外部コードからは隠されたまま、テスト目的でアクセスできるようになります。
考慮事項
InternalsVisibleTo はメカニズムを提供しますが、制御されたアクセスの場合、C の "friend" キーワードとはいくつかの点で異なります。
以上がC# は、プライベート メンバーへのアクセスを制御するための C の 'Friend' キーワードと同様の機能をどのように実現しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。