| タイトル | : プロパティの定義方法で疑問 |  
| 記事No | : 7751 |  
| 投稿日 | : 2008/06/28(Sat) 21:39 |  
| 投稿者 | : ダンボ  |  
 VB,net文法で、わけが分からなくなったので、解説お願いします。
  2つのプロパティ(OpenProp、CloseProp)を定義した場合、 Public Class TestClass     Public OpenProp As Integer     Private _CloseProp As Integer     Public Property CloseProp() As Integer         Get             Return _CloseProp         End Get         Set(ByVal value As Integer)             _CloseProp = value         End Set     End Property End Class Public Class Test     Dim Testobj As TestClass = New TestClass     Testobj.OpenProp=1      '←この文はエラー「宣言が必要です。」     Testobj.CloseProp=2     '←この文はエラー「宣言が必要です。」     Dim i As Integer = Testobj.OpenProp     '文法エラーにはならない     Dim j As Integer = Testobj.CloseProp    '文法エラーにはならない End Class
  質問1:なんでコンパイルエラーになるのでしょうか? 質問2:プロパティを使う側としては、OpenPropもClosePropも使い勝手は同じなのに    なぜ2通りの書き方ができるのでしょうか?どんな違いがあるのでしょうか? 
 
 |