Friend (Visual Basic)
Указывает, что один или несколько объявленных элементов программирования доступны только из сборки, содержащей их объявление.
Замечания
Во многих случаях необходимо, чтобы элементы программирования, такие как классы и структуры, использовались всей сборкой, а не только компонентом, объявляющим их. Однако, возможно, они не будут доступны по коду за пределами сборки (например, если приложение является владельцем). Если вы хотите ограничить доступ к элементу Friend
таким образом, его можно объявить с помощью модификатора.
Код в других классах, структурах и модулях, скомпилированных в одной сборке, может получить доступ ко всем Friend
элементам в этой сборке.
Friend
доступ часто является предпочтительным уровнем для элементов программирования приложения и Friend
является уровнем доступа по умолчанию интерфейса, модуля, класса или структуры.
Вы можете использовать Friend
только на уровне модуля, интерфейса или пространства имен. Таким образом, контекст объявления для Friend
элемента должен быть исходным файлом, пространством имен, интерфейсом, модулем, классом или структурой; он не может быть процедурой.
Примечание.
Можно также использовать модификатор доступа "Защищенный друг" , который делает член класса доступным из этого класса, из производных классов и из той же сборки, в которой определен класс. Чтобы ограничить доступ к члену из своего класса и производных классов в той же сборке, используйте модификатор закрытого защищенного доступа.
Сравнение Friend
и другие модификаторы доступа см. в разделе "Уровни доступа" в Visual Basic.
Примечание.
Можно указать, что другая сборка — это другая сборка, которая позволяет получить доступ ко всем типам и членам, помеченным как Friend
. Дополнительные сведения см. в разделе Дружественные сборки.
Пример
Следующий класс использует Friend
модификатор, чтобы разрешить другим элементам программирования в той же сборке доступ к определенным элементам.
Class CustomerInfo
Private p_CustomerID As Integer
Public ReadOnly Property CustomerID() As Integer
Get
Return p_CustomerID
End Get
End Property
' Allow friend access to the empty constructor.
Friend Sub New()
End Sub
' Require that a customer identifier be specified for the public constructor.
Public Sub New(ByVal customerID As Integer)
p_CustomerID = customerID
End Sub
' Allow friend programming elements to set the customer identifier.
Friend Sub SetCustomerID(ByVal customerID As Integer)
p_CustomerID = customerID
End Sub
End Class
Использование
Модификатор можно использовать Friend
в следующих контекстах: