Procedura: dichiarare una proprietà con livelli di accesso misti (Visual Basic)

Se si vuole che le routine di Get e Set su una proprietà abbiano livelli di accesso diversi, è possibile usare il livello più permissivo nell'istruzione Property e il livello più restrittivo nell'istruzione Get o Set. Si usano livelli di accesso misti su una proprietà quando si vuole che alcune parti del codice siano in grado di ottenere il valore della proprietà e altre parti del codice possano modificare il valore.

Per altre informazioni sui livelli di accesso, vedere Livelli di accesso in Visual Basic.

Per dichiarare una proprietà con livelli di accesso misti

  1. Dichiarare la proprietà come di consueto e specificare il livello di accesso meno restrittivo, ad esempio Public, nell'istruzione Property.

  2. Dichiarare la routine Get o Set specificando il livello di accesso più restrittivo, ad esempio Friend.

  3. Non specificare alcun livello di accesso nell'altra routine della proprietà. Presuppone il livello di accesso dichiarato nell'istruzione Property. È possibile limitare l'accesso solo in una delle routine delle proprietà.

    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
    

    Nell'esempio precedente la routine Get ha lo stesso accesso Protected della proprietà stessa, mentre la routine Set ha accesso Private. Una classe derivata da employee può leggere il valore salary, ma solo la classe employee può impostarlo.

Vedi anche