有三种需要举例的
-
Public Property Rank() As String ' 注意这里的属性名后面有个括号
Get
Return strPos
End Get
Set ( ByVal value As String )
strPos = value
End Set
End Property
Public ReadOnly Property rHobby() As String ' Readonly要在Property前面
Get
Dim i As Integer
Dim s As String
s = Join (strHobby, " , " ) ' 这个函数就是用来连接数组中的字符串的
Return s
End Get
End Property
3、' 这是定义索引器呀!
Public ReadOnly Property indexHobby( ByVal index As Integer ) As String
Get
If (strHobby Is Nothing ) Or (index > UBound (strHobby)) Then
' 注意到上面的UBound()了没?还有LBound()!
' 它们所在的命名空间是Microsoft.VisualBasic
Return Nothing
End If
Return strHobby(index)
End Get
End Property4、
Public WriteOnly Property wHobby() As String
Set ( ByVal value As String )
If value Is Nothing Then
If Not (strHobby Is Nothing ) And strHobby.GetLength( 0 ) > 1 Then
ReDim Preserve strHobby( UBound (strHobby) - 1 )
End If
Else
If strHobby Is Nothing Then
ReDim strHobby( 0 )
Else
ReDim Preserve strHobby( UBound (strHobby) + 1 )
End If
strHobby( UBound (strHobby)) = value
End If
End Set
End Property5、
Default Public Property Words( ByVal index As Integer ) As String ' 注意Default
Get '注意到参数了吗?使用这个属性的时候,就跟实现了索引器效果一样。<ClassObj(index)>
Words = theWords(index)
End Get
Set ( ByVal value As String )
theWords(index) = value
End Set
End Property