Поделиться через


Как: Объявить свойство с разными уровнями доступа (Visual Basic)

Если вы хотите, чтобы процедуры Get и Set для свойства имели разные уровни доступа, используйте более разрешительный уровень в инструкции Property и более строгий уровень в инструкции Get или Set. Уровни смешанного доступа используются для свойства, если требуется, чтобы определенные части кода могли получить значение свойства, а также некоторые другие части кода, чтобы иметь возможность изменить значение.

Дополнительные сведения об уровнях доступа см. в разделе "Уровни доступа" в Visual Basic.

Объявление свойства с смешанными уровнями доступа

  1. Объявите свойство обычным образом и укажите менее строгий уровень доступа (например Public, ) в инструкции Property .

  2. Объявите Get либо процедуру Set , указывающую более строгий уровень доступа (например Friend, ).

  3. Не указывайте уровень доступа в другой процедуре свойств. Предполагает уровень доступа, указанный в инструкции Property. Доступ можно ограничить только одним из процедур свойств.

    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
    

    В предыдущем примере Get процедура имеет тот же Protected доступ, что и само свойство, а Set процедура имеет Private доступ. Класс, производный от employee, может считывать значение salary, но только класс employee может его задавать.

См. также