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.
Menyatakan nama properti, dan prosedur properti yang digunakan untuk menyimpan dan mengambil nilai properti.
Sintaks
[ <attributelist> ] [ Default ] [ accessmodifier ]
[ propertymodifiers ] [ Shared ] [ Shadows ] [ ReadOnly | WriteOnly ] [ Iterator ]
Property name ( [ parameterlist ] ) [ As returntype ] [ Implements implementslist ]
[ <attributelist> ] [ accessmodifier ] Get
[ statements ]
End Get
[ <attributelist> ] [ accessmodifier ] Set ( ByVal value As returntype [, parameterlist ] )
[ statements ]
End Set
End Property
- or -
[ <attributelist> ] [ Default ] [ accessmodifier ]
[ propertymodifiers ] [ Shared ] [ Shadows ] [ ReadOnly | WriteOnly ]
Property name ( [ parameterlist ] ) [ As returntype ] [ Implements implementslist ]
Generator
attributelistOpsional. Daftar atribut yang berlaku untuk properti atau prosedur
GetatauSet. Lihat Daftar Atribut.DefaultOpsional. Menentukan bahwa properti ini adalah properti default untuk kelas atau struktur tempat properti tersebut didefinisikan. Properti default harus menerima parameter dan dapat diatur dan diambil tanpa menentukan nama properti. Jika Anda menyatakan properti sebagai
Default, Anda tidak dapat menggunakanPrivatepada properti atau pada salah satu prosedur propertinya. Untuk contoh dan panduan terperinci, lihat Cara: Mendeklarasikan dan Memanggil Properti Default di Visual Basic.accessmodifierOpsional pada pernyataan
Propertydan paling banyak salah satu pernyataanGetdanSet. Bisa jadi salah satu dari yang berikut:propertymodifiersOpsional. Bisa jadi salah satu dari yang berikut:
MustOverride OverridesNotOverridable Overrides
SharedOpsional. Lihat Dibagikan.
ShadowsOpsional. Lihat Bayangan.
ReadOnlyOpsional. Lihat ReadOnly.
WriteOnlyOpsional. Lihat WriteOnly.
IteratorOpsional. Lihat Iterator.
nameHarus diisi. Nama properti. Lihat Nama Elemen yang Dideklarasikan.
parameterlistOpsional. Daftar nama variabel lokal yang mewakili parameter properti ini, dan kemungkinan parameter tambahan dari prosedur
Set. Properti berparameter sering digunakan untuk membuat pengindeks atau properti default yang memungkinkan akses seperti koleksi. Lihat Daftar Parameter dan Cara: Mendeklarasikan dan Memanggil Properti Default di Visual Basic.returntypeDiperlukan jika
Option StrictadalahOn. Jenis data dari nilai yang dikembalikan oleh properti ini.ImplementsOpsional. Menunjukkan bahwa properti ini mengimplementasikan satu atau beberapa properti, masing-masing didefinisikan dalam antarmuka yang diimplementasikan oleh kelas atau struktur yang berisi properti ini. Lihat Pernyataan Implements.
implementslistDiperlukan jika
Implementsdiberikan. Daftar properti yang sedang diimplementasikan.implementedproperty [ , implementedproperty ... ]Setiap
implementedpropertymemiliki sintaks dan bagian berikut:interface.definednameBagian Deskripsi interfaceHarus diisi. Nama antarmuka yang diimplementasikan oleh kelas atau struktur yang berisi properti ini. definednameHarus diisi. Nama tempat properti didefinisikan dalam interface.GetOpsional. Diperlukan jika properti ditandai
ReadOnly. Memulai prosedur propertiGetyang digunakan untuk mengembalikan nilai properti. PernyataanGetini tidak digunakan dengan properti yang diimplementasikan secara otomatis.statementsOpsional. Blok pernyataan untuk dijalankan dalam prosedur
GetatauSet.End GetMengakhiri prosedur properti
Get.SetOpsional. Diperlukan jika properti ditandai
WriteOnly. Memulai prosedur propertiSetyang digunakan untuk menyimpan nilai properti. PernyataanSetini tidak digunakan dengan properti yang diimplementasikan secara otomatis.End SetMengakhiri prosedur properti
Set.End PropertyMengakhiri definisi properti ini.
Keterangan
Pernyataan ini Property memperkenalkan deklarasi properti. Properti dapat memiliki prosedur Get (baca saja), prosedur Set (tulis saja), atau keduanya (baca-tulis). Anda dapat menghilangkan Get prosedur dan Set saat menggunakan properti yang diimplementasikan secara otomatis. Untuk informasi selengkapnya, lihat Properti yang diterapkan secara otomatis.
Anda dapat menggunakan Property hanya di tingkat kelas. Ini berarti konteks deklarasi untuk properti harus berupa kelas, struktur, modul, atau antarmuka, dan tidak boleh berupa file sumber, namespace, prosedur, atau blok. Untuk informasi selengkapnya, lihat Konteks Deklarasi dan Tingkat Akses Default.
Secara default, properti menggunakan akses publik. Anda dapat menyesuaikan tingkat akses properti dengan pengubah akses pada pernyataan Property, dan Anda dapat secara opsional menyesuaikan salah satu prosedur propertinya ke tingkat akses yang lebih ketat. Untuk contoh terperinci tingkat akses campuran, lihat Cara: Mendeklarasikan Properti dengan Tingkat Akses Campuran.
Visual Basic meneruskan parameter ke prosedur Set selama penetapan properti. Jika Anda tidak menyediakan parameter untuk Set, lingkungan pengembangan terpadu (IDE) menggunakan parameter implisit bernama value. Parameter ini menyimpan nilai yang akan ditetapkan ke properti. Anda biasanya menyimpan nilai ini dalam variabel lokal privat dan mengembalikannya setiap kali prosedur Get dipanggil.
Aturan
Tingkat Akses Campuran. Jika Anda menentukan properti baca-tulis, Anda dapat secara opsional menentukan tingkat akses yang berbeda untuk
Getatau prosedurSet, tetapi tidak keduanya. Jika Anda melakukan ini, tingkat akses prosedur harus lebih ketat dibandingkan tingkat akses properti. Misalnya, jika properti dinyatakanFriend, Anda dapat mendeklarasikanSetprosedurPrivate, tetapi tidakPublic.Jika Anda menentukan properti
ReadOnlyatauWriteOnly, prosedur properti tunggal (GetatauSet, masing-masing) mewakili semua properti. Anda tidak dapat mendeklarasikan tingkat akses yang berbeda untuk prosedur seperti itu, karena itu akan menetapkan dua tingkat akses untuk properti.Jenis Pengembalian. Pernyataan
Propertydapat mendeklarasikan jenis data dari nilai yang mengembalikannya. Anda dapat menentukan jenis data apa pun atau nama enumerasi, struktur, kelas, atau antarmuka.Jika Anda tidak menentukan
returntype, properti akan mengembalikanObject.Implementasi. Jika prosedur ini menggunakan kata kunci
Implements, kelas atau struktur yang memuat juga harus memiliki pernyataanImplementsyang segera mengikuti pernyataanClassatauStructure. PernyataanImplementsharus menyertakan setiap antarmuka yang ditentukan dalamimplementslist. Namun, nama tempat antarmuka mendefinisikanProperty(dalamdefinedname) tidak harus sama dengan nama properti ini (dalamname).
Perilaku
Kembali dari Prosedur Properti. Ketika prosedur
GetatauSetkembali ke kode panggilan, eksekusi berlanjut dengan pernyataan mengikuti pernyataan yang memanggilnya.Pernyataan
Exit PropertydanReturnakan memicu segera keluar dari prosedur properti. Sejumlah pernyataanExit PropertydanReturndapat muncul di mana saja dalam prosedur, dan Anda dapat mencampur pernyataanExit PropertydanReturn.Nilai Pengembalian. Untuk mengembalikan nilai dari prosedur
Get, Anda dapat menetapkan nilai ke nama properti atau menyertakannya dalam pernyataanReturn. Contoh berikut menetapkan nilai pengembalian ke nama fungsiquoteForTheDay, lalu menggunakan pernyataanExit Propertyuntuk kembali.Private quoteValue As String = "No quote assigned yet."ReadOnly Property QuoteForTheDay() As String Get QuoteForTheDay = quoteValue Exit Property End Get End PropertyJika Anda menggunakan
Exit Propertytanpa menetapkan nilai kename, prosedurGetmengembalikan nilai default untuk jenis data properti.Pernyataan
Returnsecara bersamaan menetapkan nilai pengembalian prosedurGetdan keluar dari prosedur. Contoh berikut ini menunjukkan ini.Private quoteValue As String = "No quote assigned yet."ReadOnly Property QuoteForTheDay() As String Get Return quoteValue End Get End Property
Contoh
Contoh berikut mendeklarasikan properti di kelas.
Class Class1
' Define a local variable to store the property value.
Private propertyValue As String
' Define the property.
Public Property Prop1() As String
Get
' The Get property procedure is called when the value
' of a property is retrieved.
Return propertyValue
End Get
Set(ByVal value As String)
' The Set property procedure is called when the value
' of a property is modified. The value to be assigned
' is passed in the argument to Set.
propertyValue = value
End Set
End Property
End Class
Properti Berparameter
Contoh berikut menunjukkan cara membuat properti berparameter, juga disebut pengindeks, yang memungkinkan akses seperti array ke koleksi:
Class SampleCollection
' Define a local collection to store strings.
Private items As New List(Of String)
' Define a parameterized property (indexer) for the collection.
Default Public Property Item(ByVal index As Integer) As String
Get
' Return the item at the specified index.
If index >= 0 AndAlso index < items.Count Then
Return items(index)
Else
Return Nothing
End If
End Get
Set(ByVal value As String)
' Set the item at the specified index.
If index >= 0 AndAlso index < items.Count Then
items(index) = value
ElseIf index = items.Count Then
' Allow adding new items at the end.
items.Add(value)
End If
End Set
End Property
' Add a Count property for convenience.
Public ReadOnly Property Count As Integer
Get
Return items.Count
End Get
End Property
' Add method to add items.
Public Sub Add(ByVal item As String)
items.Add(item)
End Sub
End Class
Untuk contoh komprehensif penggunaan properti, termasuk implementasi otomatis, tingkat akses campuran, dan skenario validasi, lihat Prosedur Properti.
Lihat juga
Jenis dan Fitur Properti
Skenario Properti Tingkat Lanjut
- Cara: Mendeklarasikan dan Memanggil Properti Default di Visual Basic
- Cara: Mendeklarasikan Properti dengan Tingkat Akses Campuran