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


Практическое руководство. Объявление свойства со смешанным уровнем доступа (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 может установить его.

См. также

Задачи

Практическое руководство. Создание свойства (Visual Basic)

Практическое руководство. Вызов процедуры свойства (Visual Basic)

Практическое руководство. Объявление и вызов свойства по умолчанию в Visual Basic

Практическое руководство. Запись значения в свойство (Visual Basic)

Практическое руководство. Получение значения из свойства (Visual Basic)

Ссылки

Оператор Property

Основные понятия

Процедуры в Visual Basic

Процедуры свойств (Visual Basic)

Параметры и аргументы процедуры (Visual Basic)

Различия между свойствами и переменными в Visual Basic