指定一或多個宣告的程式設計專案只能從包含其宣告的元件記憶體取。
備註
在許多情況下,您想要讓整個元件使用類別和結構等程式設計專案,而不只是宣告它們的元件。 不過,您可能不想讓元件外部的程式代碼存取它們(例如,如果應用程式是專屬的)。 如果您想要以這種方式限制對專案的存取,您可以使用 修飾詞來宣告它 Friend 。
編譯至相同元件之其他類別、結構和模組中的程式代碼可以存取該元件中的所有 Friend 專案。
Friend access 通常是應用程式程式設計元素的慣用層級,而且 Friend 是介面、模組、類別或結構的預設存取層級。
您只能在模組、介面或命名空間層級使用 Friend 。 因此,元素的 Friend 宣告內容必須是來源檔案、命名空間、介面、模組、類別或結構;它不能是程式。
備註
您也可以使用 Protected Friend 存取修飾詞,讓類別成員可從該類別內部、衍生類別存取,以及從定義類別的相同元件存取。 若要限制成員從其類別內的存取權,以及來自相同元件中的衍生類別,您可以使用 Private Protected 存取修飾詞。
如需 與其他存取修飾詞的 Friend 比較,請參閱 Visual Basic中的存取層級。
備註
您可以指定另一個元件是friend元件,其允許它存取標示為 Friend的所有類型和成員。 如需詳細資訊,請參閱 Friend Assemblies (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 修飾詞: