Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Özellik yordamı, bir modül, sınıf veya yapıdaki özel özelliği işleyen bir dizi Visual Basic deyimidir. Özellik yordamları, özellik erişimcileri olarak da bilinir.
Visual Basic aşağıdaki özellik yordamlarını sağlar:
- Yordam
Getbir özelliğin değerini döndürür. İfade içindeki bir özelliğe eriştiğinizde tetiklenir. -
SetProsedür, nesne başvurusu da dahil olmak üzere bir özelliği bir değere ayarlar. Belirtilen özelliğe bir değer atadığınızda çağırılan bir yöntemdir.
Genellikle Get ve Set deyimlerini kullanarak özellik yordamlarını çiftler halinde tanımlarsınız, ancak özellik salt okunur (Get Deyimi) veya yalnızca yazılabilir (Set Deyimi) ise tek başına bir yordam tanımlayabilirsiniz.
Otomatik olarak uygulanan bir özellik kullanırken Get ve Set yordamını atlayabilirsiniz. Daha fazla bilgi için bkz . Otomatik olarak uygulanan özellikler.
Sınıflarda, yapılarda ve modüllerde özellikleri tanımlayabilirsiniz. Özellikler varsayılan olarak kullanılır Public . Bu, bunları uygulamanızda özelliğin kapsayıcıya erişebilecek herhangi bir yerden çağırabileceğiniz anlamına gelir.
Özelliklerin ve değişkenlerin karşılaştırması için bkz . Visual Basic'te Özellikler ve Değişkenler Arasındaki Farklar.
Bildirim söz dizimi
Property Deyimi ve End Property deyimi içine alınan bir kod bloğu tarafından özelliğin kendisi tanımlanır. Bu bloğun içinde, her özellik yordamı bir bildirim deyimi (Get veya Set) ve ilgili End bildirimi ile çevrelenmiş bir alt blok olarak görünür.
Bir özelliği ve yordamlarını bildirme söz dizimi aşağıdaki gibidir:
[Default] [Modifiers] Property PropertyName[(ParameterList)] [As DataType]
[AccessLevel] Get
' Statements of the Get procedure.
' The following statement returns an expression as the property's value.
Return Expression
End Get
[AccessLevel] Set[(ByVal NewValue As DataType)]
' Statements of the Set procedure.
' The following statement assigns newvalue as the property's value.
LValue = NewValue
End Set
End Property
' - or -
[Default] [Modifiers] Property PropertyName [(ParameterList)] [As DataType]
Modifiers, aşırı yükleme, geçersiz kılma, paylaşma ve gölgeleme ile ilgili erişim düzeyini ve bilgileri, ayrıca özelliğin salt okunur mu yoksa yazılabilir mi olduğunu belirtebilir.
AccessLevel üzerindeki Get veya Set yordamı, özelliğin kendisi için belirtilen erişim düzeyinden daha kısıtlayıcı herhangi bir düzey olabilir. Daha fazla bilgi için bkz . Özellik Deyimi.
Veri Türü
Özelliğin veri türü ve asıl erişim düzeyi, Property deyiminde, özellik yordamlarında değil tanımlanır. Bir özelliğin yalnızca bir veri türü olabilir. Örneğin, bir Decimal değerini depolamak için bir özellik tanımlayıp Double değerini almak mümkün değildir.
Erişim Düzeyi
Ancak, bir özellik için bir asıl erişim düzeyi tanımlayabilir ve özellik yordamlarından birinde erişim düzeyini daha fazla kısıtlayabilirsiniz. Örneğin, bir Public özellik tanımlayabilir ve ardından bir Private Set yordam tanımlayabilirsiniz. Prosedür Get olarak kalır Public. Bir özelliğin yordamlarından yalnızca birinde erişim düzeyini değiştirebilir ve bunu yalnızca asıl erişim düzeyinden daha kısıtlayıcı yapabilirsiniz. Daha fazla bilgi için bkz. Nasıl Yapılır: Karma Erişim Düzeylerine Sahip Bir Özellik Bildirme.
Parametre bildirimi
Geçiş mekanizmasının ByValolması gerektiği dışında, her parametreyi Alt Yordamlar için olduğu gibi bildirirsiniz.
Parametre listesindeki her parametrenin söz dizimi aşağıdaki gibidir:
[Optional] ByVal [ParamArray] parametername As datatype
Parametre isteğe bağlıysa, bildiriminin bir parçası olarak varsayılan bir değer de sağlamanız gerekir. Varsayılan değeri belirtmek için söz dizimi aşağıdaki gibidir:
Optional ByVal parametername As datatype = defaultvalue
Özellik değeri
Bir Get yordamda, dönüş değeri özelliğin değeri olarak çağıran ifadeye sağlanır.
Bir Set prosedürde, yeni özellik değeri Set ifadesinin parametresine geçirilir. Bir parametreyi açıkça bildirirseniz, bunu özelliğiyle aynı veri türüyle bildirmeniz gerekir. Parametre bildirmezseniz, derleyici özelliğine atanacak yeni değeri temsil etmek için örtük parametresini Value kullanır.
Çağırma söz dizimi
Özelliğe atıfta bulunarak bir özellik yordamını örtük olarak çağırırsınız. Özelliğin adını, değişkenin adını kullandığınız gibi kullanırsınız, ancak isteğe bağlı olmayan tüm bağımsız değişkenler için değerler sağlamanız ve bağımsız değişken listesini parantez içine almanız gerekir. Hiçbir bağımsız değişken sağlanmazsa, isteğe bağlı olarak parantezleri atlayabilirsiniz.
Örtük bir çağrı için Set prosedürünün sentaksı aşağıdaki gibidir.
propertyname[(argumentlist)] = expression
Bir prosedüre örtük çağrının Get söz dizimi şu şekildedir:
lvalue = propertyname[(argumentlist)]
Do While (propertyname[(argumentlist)] > expression)
Bildirim ve çağrı illüstrasyonu
Aşağıdaki özellik, bir tam adı iki bileşen ad olarak, ilk isim ve soyisim şeklinde depolar. Çağıran kod fullName okuduğunda, Get yordam iki bileşen adı birleştirir ve tam adı döndürür. Çağıran kod yeni bir tam ad atadığında, Set prosedür bunu iki bileşen isme bölmeye çalışır. Eğer boşluk bulamazsa, hepsini birinci ad olarak depolar.
Dim firstName, lastName As String
Property fullName() As String
Get
If lastName = "" Then
Return firstName
Else
Return firstName & " " & lastName
End If
End Get
Set(ByVal Value As String)
Dim space As Integer = Value.IndexOf(" ")
If space < 0 Then
firstName = Value
lastName = ""
Else
firstName = Value.Substring(0, space)
lastName = Value.Substring(space + 1)
End If
End Set
End Property
Aşağıdaki örnek, fullName özelliğinin yordamlarını tipik olarak nasıl çağrılacağını gösterir.
fullName = "MyFirstName MyLastName"
MsgBox(fullName)
Ayrıca bkz.
- Yordamlar
- Fonksiyon Prosedürleri
- Operatör Prosedürleri
- Prosedür Parametreleri ve Argümanlar
- Visual Basic'te Özellikler ve Değişkenler Arasındaki Farklar
- Nasıl yapılır: Özellik Oluşturma
- Nasıl Yapılır: Bir Özellik Prosedürü Çağırma
- Nasıl yapılır: Visual Basic'te Varsayılan Özellik Bildirme ve Çağırma
- Nasıl yapılır: Bir Özelliğe Değer Ekleme
- Nasıl yapılır: Bir Özellikten Değer Alma