How to: Declare a Property with Mixed Access Levels - Visual Basic (original) (raw)
If you want the Get
and Set
procedures on a property to have different access levels, you can use the more permissive level in the Property
statement and the more restrictive level in either the Get
or Set
statement. You use mixed access levels on a property when you want certain parts of the code to be able to get the property's value, and certain other parts of the code to be able to change the value.
For more information on access levels, see Access levels in Visual Basic.
To declare a property with mixed access levels
- Declare the property in the normal way, and specify the less restrictive access level (such as
Public
) in theProperty
statement. - Declare either the
Get
or theSet
procedure specifying the more restrictive access level (such asFriend
). - Do not specify an access level on the other property procedure. It assumes the access level declared in the
Property
statement. You can restrict access on only one of the property procedures.
Public Class employee
Private salaryValue As Double
Protected Property salary() As Double
Get
Return salaryValue
End Get
Private Set(ByVal value As Double)
salaryValue = value
End Set
End Property
End Class
In the preceding example, the Get
procedure has the same Protected
access as the property itself, while the Set
procedure has Private
access. A class derived from employee
can read the salary
value, but only the employee
class can set it.
See also
- Procedures
- Property Procedures
- Procedure Parameters and Arguments
- Property Statement
- Differences Between Properties and Variables in Visual Basic
- How to: Create a Property
- How to: Call a Property Procedure
- How to: Declare and Call a Default Property in Visual Basic
- How to: Put a Value in a Property
- How to: Get a Value from a Property