public Property let,get和直接用public什么区别?

ASP   2024-12-22 17:08   73   0  

在 Class 块中,成员通过相应的声明语句被声明为 Private(私有成员,只能在类内部调用) 或 Public(公有成员,能在类内外部调用)。被声明为 Private 的将只在 Class 块内是可见的。被声明为 Public 不仅在 Class 块的内部是可见的,对 Class 块之外的代码也是可见的。没有使用 Private 或 Public 明确声明的被默认为 Public。在类的块内部被声明为 Public 的过程(Sub 或 Function)将成为类的方法。Public 变量将成为类的属性,同使用 Property Get、Property Let 和 Property Set 显式声明的属性相同。

看看这个例子,可能有所理解

Class PencilClass
    Private recentPencil, recentColor
    Property Get Pencil()
        Set Pencil = recentPencil
    End Property
    Property Set Pencil(x)
        Set recentPencil = x
    End Property
    Property Get Pencilcolor()
        Select Case recentColor
            Case 1: Pencilcolor = "Orange"
            Case 2: Pencilcolor = "Green"
            Case Else: Pencilcolor = "yellow"
        End Select
    End Property
    Property Let Pencilcolor(x)
        If x = "Orange" Then
            recentColor = 1
        Else
            If x = "Green" Then
                recentColor = 2
            Else
                recentColor = 0
            End If
        End If
    End Property
End Class


原文链接:https://blog.csdn.net/sunslee/article/details/5974674


博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。