Friend(Visual Basic)

선언된 하나 이상의 프로그래밍 요소가 선언이 포함된 어셈블리 내에서만 액세스할 수 있도록 지정합니다.

설명

대부분의 경우 클래스 및 구조와 같은 프로그래밍 요소를 선언하는 구성 요소뿐만 아니라 전체 어셈블리에서 사용하려고 합니다. 그러나 어셈블리 외부의 코드로 액세스할 수 없도록 할 수 있습니다(예: 애플리케이션이 독점인 경우). 이러한 방식으로 요소에 대한 액세스를 제한하려면 한정자를 사용하여 Friend 선언할 수 있습니다.

동일한 어셈블리로 컴파일되는 다른 클래스, 구조체 및 모듈의 코드는 해당 어셈블리의 Friend 모든 요소에 액세스할 수 있습니다.

Friend 액세스는 종종 애플리케이션의 프로그래밍 요소에 대한 기본 수준이며 Friend 인터페이스, 모듈, 클래스 또는 구조체의 기본 액세스 수준입니다.

모듈, 인터페이스 또는 네임스페이스 수준에서만 사용할 Friend 수 있습니다. 따라서 요소에 대한 Friend 선언 컨텍스트는 소스 파일, 네임스페이스, 인터페이스, 모듈, 클래스 또는 구조체여야 하며 프로시저가 될 수 없습니다.

참고

또한 해당 클래스 내, 파생 클래스 및 클래스가 정의된 동일한 어셈블리에서 클래스 멤버에 액세스할 수 있도록 하는 Protected Friend 액세스 한정자를 사용할 수도 있습니다. 클래스 내 및 동일한 어셈블리의 파생 클래스에서 멤버에 대한 액세스를 제한하려면 Private Protected 액세스 한정자를 사용합니다.

다른 액세스 한정자를 비교 Friend 하려면 Visual Basic 액세스 수준을 참조하세요.

참고

다른 어셈블리가 friend 어셈블리로 표시되어 있는 모든 형식 및 멤버에 액세스할 수 있도록 지정할 수 있습니다 Friend. 자세한 내용은 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 한정자를 사용할 수 있습니다.

Class 문

Const 문

Declare 문

Delegate 문

Dim 문

Enum 문

Event 문

Function 문

Interface 문

Module 문

Property Statement

Structure 문

Sub 문

추가 정보