アクセサーの制御(C#)

  • このエントリーをはてなブックマークに追加

スポンサーリンク

※サイト運営にサーバーは必須です※
ロリポップ! はコスパのよい初心者向けサーバーです~

アクセサーの省略

プロパティは、getアクセサーとsetアクセサーの2つのアクセサーから通常は構成されます。

しかし、getアクセサーとsetアクセサーの両方を必ず用意しないというわけではありません。片方だけでも問題ありません。

getアクセサーのみであれば、読み取り専用プロパティとして振舞います。

setアクセサーのみであれば、書き込み専用プロパティとして振舞います。

ソースコード

実行結果

10
40

mc.Resultに対して、mc.Numのように値を代入しようとするとエラーになります。

逆に、mc.Numに対して、mc.Resultのように値を読み出そうとするとエラーになります。

アクセシビリティの設定

getアクセサーとsetアクセサーに対して、それぞれ異なるアクセシビリティを設定することが可能です。

設定する際は以下の2点に注意してください(考えれば当たり前のことですが…)

・プロパティ自体のアクセシビリティより緩いアクセシビリティをアクセサーに指定できません

・getアクセサーとsetアクセサーの両方に対してアクセス修飾子を書くことはできません
(もしも、両方に対してアクセス修飾子を書くことができたら、プロパティ自体のアクセス修飾子の存在意味がなくなってしまいます。片方のアクセサーにアクセス修飾子を付けたなら、もう片方のアクセサーは、自動的にプロパティ自体のアクセス修飾子が適用されます)

ソースコード

※setアクセサーに対して、アクセス修飾子privateを付けています。

実行結果

10
70

クラスのインスタンス化の際に、_numの値を設定します。

そして、一度インスタンス化したら、それ以降は_numの値の変更を許さないソースコードとなっています。

※コンストラクターはクラスをインスタンス化した際に、最初に処理されるメソッドのようなもの。

~ギャンブルに絶対儲かる必勝法があるのだろうか?~

私(サイト主)はこの疑問に対して非常に興味を持ち、プログラミングで検証してみました。

このサイトを応援してもいいかなと思う人はぜひとも購入を検討してみてください。

ギャンブルの必勝法が本当に儲かるかプログラミングで検証してみた

     

コメントを残す

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)