Instruções Public e Private

Um dos objetivos da programação orientada a objetos é fornecer uma caixa preta, ocultando os detalhes de implementação do usuário final. Para ajudar com este encapsulamento da complexidade, o BSL permite ocultar os métodos e as propriedades de um objeto.

A fim de criar métodos e propriedades que estão ocultos para o usuário final, preceda a definição de propriedades ou métodos com a palavra-chave Private.

Para criar métodos e propriedades que podem ser acessados pelo usuário final, preceda a definição de propriedades ou métodos com a palavra-chave Public ou Dim. Se você não especificar explicitamente se um método ou propriedade deve ser público, privado ou de dimensão, ele será público.

No entanto, é altamente recomendável que você sempre indique explicitamente se uma propriedade ou método é Público ou Privado.

Tentar acessar propriedades ou métodos privados por meio de uma instância de Classe resultará em um erro.

Exemplo:

Class Comp
    Private modStrType
    Private Property Let ComputerType(strType)
        modStrType = strType
    End Property
    Public Property Get ComputerType
        ComputerType = modStrType
    End Property
    Private Function Funct1
        'Add business logic using class variables
    End Function
    Public Sub Sub1
        'Add business logic using class variables
    End Sub
End Class

Set objComp = new Comp
objComp.ComputerType = "Mac"        'Invalid, accessing this property will throw error as it’s private
str1 = objComp.ComputerType 
objComp.Funct1                           'Invalid, accessing this function will throw error as it’s private
objComp.Sub1