Istruzioni Public e Private

Uno degli obiettivi della programmazione orientata agli oggetti è fornire una specie di "scatola nera" in cui rendere invisibili i dettagli di implementazione all'utente finale. A supporto di questo incapsulamento della complessità del codice, in BSL è possibile nascondere i metodi e le proprietà di un oggetto.

Per creare metodi e proprietà non visibili all'utente finale, anteporre alla definizione delle proprietà o dei metodi la parola chiave Private.

Per creare metodi e proprietà accessibili all'utente finale, anteporre alla definizione delle proprietà o dei metodi la parola chiave Public o Dim. Se un metodo o una proprietà non viene specificato in modo esplicito mediante le parole chiave Public, Dim o Private, la proprietà o il metodo sarà pubblico.

Tuttavia, si consiglia di indicare sempre in modo esplicito se una proprietà o un metodo sarà pubblico o privato.

Se si tenta di accedere a metodi o proprietà privati tramite un'istanza di una classe, verrà restituito un errore.

Esempio

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