プライベートメンバにアクセスする

概要

新しいクラスを作る(3) ― コンストラクタにて、プライベートフィールドへのアクセスが冗長になることを書きました。色々と考えたのですが、他の場面で使うこともあるかもしれないと思い、外部スクリプトにすることにしました。

ダウンロード

用例

$o に「FMessage」というプライベートフィールドを持つオブジェクトが入っている時、Get-PrivateField および Set-PrivateField は、次のように使います。

PS> Set-PrivateField $o 'FMessage' 'Hello World!'
PS> Get-PrivateField $o 'FMessage'
Hello World!

また、$o が、「Add」という int 型の引数を 2 つ取るメソッドを持っている時、Invoke-PrivateMethod は、次のように使います。

PS> Invoke-PrivateMethod $o 'Add' (3, 5)
8

これらは、静的フィールドおよび静的メソッドに対しても使うことができます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です