Dela via


Gör så här: Deklarera en egenskap med blandade åtkomstnivåer (Visual Basic)

Om du vill Get att procedurerna och Set på en egenskap ska ha olika åtkomstnivåer kan du använda den mer tillåtande nivån i -instruktionen Property och den mer restriktiva nivån i -instruktionen Get eller Set . Du använder blandade åtkomstnivåer på en egenskap när du vill att vissa delar av koden ska kunna hämta egenskapens värde och vissa andra delar av koden för att kunna ändra värdet.

Mer information om åtkomstnivåer finns i Åtkomstnivåer i Visual Basic.

Deklarera en egenskap med blandade åtkomstnivåer

  1. Deklarera egenskapen på normalt sätt och ange den mindre restriktiva åtkomstnivån (till exempel Public) i -instruktionen Property .

  2. Deklarera antingen proceduren GetSet eller som anger den mer restriktiva åtkomstnivån (till exempel Friend).

  3. Ange inte någon åtkomstnivå för den andra egenskapsproceduren. Den förutsätter den åtkomstnivå som deklareras i -instruktionen Property . Du kan endast begränsa åtkomsten för en av egenskapsprocedurerna.

    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
    

    I föregående exempel har proceduren Get samma Protected åtkomst som själva egenskapen, medan proceduren Set har Private åtkomst. En klass som härleds från employee kan läsa värdet salary , men endast employee klassen kan ange det.

Se även