Uno de los objetivos de la programación orientada a objetos es proporcionar una caja negra que oculte los detalles de implementación al usuario final. Para ayudar con esta encapsulación de complejidad, BSL le permite ocultar los métodos y las propiedades de un objeto.
Para crear métodos y propiedades que estén ocultos para el usuario final, anteponga la palabra clave Private a la definición de propiedades o métodos.
Para crear métodos y propiedades a los que pueda acceder el usuario final, anteponga la palabra clave Public o Dim a la definición de propiedades o métodos. Si no especifica explícitamente si un método o propiedad debe ser público, dim o privado, será público.
Sin embargo, se recomienda que siempre indique explícitamente si una propiedad o un método es público o privado.
Si se intenta acceder a métodos o propiedades privados mediante una instancia de una clase, se producirá un error.
Ejemplo:
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