Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menentukan bahwa satu atau beberapa elemen pemrograman yang dideklarasikan hanya dapat diakses dari dalam rakitan yang berisi deklarasinya.
Komentar
Dalam banyak kasus, Anda ingin elemen pemrograman seperti kelas dan struktur digunakan oleh seluruh rakitan, tidak hanya oleh komponen yang mendeklarasikannya. Namun, Anda mungkin tidak ingin mereka dapat diakses dengan kode di luar perakitan (misalnya, jika aplikasi adalah kepemilikan). Jika Anda ingin membatasi akses ke elemen dengan cara ini, Anda dapat mendeklarasikannya dengan menggunakan pengubah Friend .
Kode di kelas, struktur, dan modul lain yang dikompilasi ke rakitan yang sama dapat mengakses semua elemen dalam perakitan tersebut Friend .
Friend akses sering kali merupakan tingkat pilihan untuk elemen pemrograman aplikasi, dan Friend merupakan tingkat akses default antarmuka, modul, kelas, atau struktur.
Anda hanya dapat menggunakan Friend di tingkat modul, antarmuka, atau namespace. Oleh karena itu, konteks deklarasi untuk Friend elemen harus berupa file sumber, namespace, antarmuka, modul, kelas, atau struktur; itu tidak dapat menjadi prosedur.
Nota
Anda juga dapat menggunakan pengubah akses Teman Yang Dilindungi , yang membuat anggota kelas dapat diakses dari dalam kelas tersebut, dari kelas turunan, dan dari rakitan yang sama tempat kelas ditentukan. Untuk membatasi akses ke anggota dari dalam kelasnya dan dari kelas turunan dalam rakitan yang sama, Anda menggunakan pengubah akses Terlindungi Privat .
Untuk perbandingan Friend dan pengubah akses lainnya, lihat Tingkat akses di Visual Basic.
Nota
Anda dapat menentukan bahwa assembly lain adalah perakitan teman, yang memungkinkannya mengakses semua jenis dan anggota yang ditandai sebagai Friend. Untuk informasi selengkapnya, lihat Rakitan Teman.
Contoh
Kelas berikut menggunakan pengubah Friend untuk memungkinkan elemen pemrograman lain dalam rakitan yang sama untuk mengakses anggota tertentu.
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
Penggunaan
Anda dapat menggunakan pengubah Friend dalam konteks ini: