Gewusst wie: Deklarieren einer Eigenschaft mit gemischten Zugriffsebenen (Visual Basic)

Wenn die Prozeduren Get und Set für eine Eigenschaft unterschiedliche Zugriffsebenen aufweisen sollen, können Sie die tolerantere Ebene in der Property-Anweisung und die restriktivere Ebene in der Get- oder Set-Anweisung verwenden. Sie verwenden gemischte Zugriffsebenen für eine Eigenschaft, wenn bestimmte Teile des Codes in der Lage sein sollen, den Wert der Eigenschaft abzurufen, und bestimmte andere Teile des Codes den Wert ändern sollen.

Weitere Informationen zu Zugriffsebenen finden Sie unter Zugriffsebenen in Visual Basic.

So deklarieren Sie eine Eigenschaft mit gemischten Zugriffsebenen

  1. Deklarieren Sie die Eigenschaft normal, und geben Sie die weniger restriktive Zugriffsebene (z. B. Public) in der Property-Anweisung an.

  2. Deklarieren Sie entweder die Prozedur Get oder Set, die die restriktivere Zugriffsebene (z. B. Friend) angibt.

  3. Geben Sie keine Zugriffsebene für die andere Eigenschaftsprozedur an. Es wird davon ausgegangen, dass die in der Property-Anweisung deklarierte Zugriffsebene deklariert ist. Sie können den Zugriff nur auf eine der Eigenschaftenprozeduren beschränken.

    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
    

    Im vorherigen Beispiel verfügt die Get-Prozedur über denselben Protected-Zugriff wie die Eigenschaft selbst, während die Set-Prozedur den Private-Zugriff besitzt. Eine von der employee-Klasse abgeleitete Klasse kann den Wert salary lesen, jedoch kann nur die employee-Klasse ihn festlegen.

Weitere Informationen