Arkadaş (Visual Basic)
Bildirilen bir veya daha fazla programlama öğelerine yalnızca bildirimlerini içeren derlemenin içinde erişilebilir olduğunu belirtir.
Açıklamalar
Çoğu durumda, sınıflar ve yapılar gibi programlama öğelerinin yalnızca bunları bildiren bileşen tarafından değil, tüm derleme tarafından da kullanılmasını istersiniz. Ancak, derleme dışında kod tarafından erişilebilir olmasını istemeyebilirsiniz (örneğin, uygulama özel ise). Bir öğeye erişimi bu şekilde sınırlamak için değiştiricisini kullanarak bunu Friend bildirebilirsiniz.
Diğer sınıflarda, yapılarda ve aynı derlemede derlenmiş modüllerde yer alan kod, o Friend derlemede yer alan tüm öğelere erişebilirsiniz.
Friend erişim genellikle bir uygulamanın programlama öğeleri için tercih edilen düzeydir ve arabirim, modül, sınıf veya yapının varsayılan Friend erişim düzeyidir.
Yalnızca Friend modül, arabirim veya ad alanı düzeyinde kullanabilirsiniz. Bu nedenle, bir öğenin bildirim bağlamı bir kaynak dosya, ad alanı, arabirim, modül, sınıf veya yapı Friend olması gerekir; bir yordam değildir.
Not
Protected Friend erişim değiştiricisini de kullanabilirsiniz. Bu, bir sınıf üyesini bu sınıfın içinde, türetilmiş sınıflardan ve sınıfın tanımlandığı derlemeden erişilebilir hale gelir. Bir üyeye sınıf içinde ve aynı derlemede türetilmiş sınıflardan erişimi kısıtlamak için Özel Korumalı erişim değiştiricisini kullanırnız.
ve diğer erişim Friend değiştiricilerinin karşılaştırması için bkz. Visual Basic. .
Not
Başka bir derlemenin, olarak işaretlenmiş tüm türlere ve üyelere erişmesine olanak sağlayan bir arkadaş derlemesi olduğunu Friend belirterek. Daha fazla bilgi için bkz. Arkadaş Derlemeleri.
Örnek
Aşağıdaki sınıf, aynı Friend derleme içindeki diğer programlama öğelerinin belirli üyelere erişmesine izin vermek için değiştiriciyi kullanır.
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
Kullanım
Değiştiriciyi Friend şu bağlamlarda kullanabilirsiniz: