Set Deyimi (Visual Basic)

Bir Set özelliğe değer atamak için kullanılan özellik yordamını bildirir.

Sözdizimi

[ <attributelist> ] [ accessmodifier ] Set [([ByVal value [ As datatype ]])]  
    [ statements ]  
End Set  

Parça

attributelist
isteğe bağlı. Bkz. Öznitelik Listesi.

accessmodifier
Bu özellikteki ve Set deyimlerinden Get en fazla birinde isteğe bağlı. Aşağıdakilerden biri olabilir:

Bkz. Visual Basic'te erişim düzeyleri.

value
isteğe bağlı. özelliği için yeni değeri içeren parametre. Belirtilmezse (parametre listesi yoksa veya boşsa), adlı value örtük bir parametre tanımlanır. Bu örtük parametrenin veri türü, bu Set deyimin bildirildiği özelliğin veri türüdür.

datatype
varsa ve Option Strict ise value gereklidirOn. Verilmezse value mevcut olamaz. Parametrenin value veri türü. Belirtilen veri türü, bu Set deyimin bildirildiği özelliğin veri türüyle aynı olmalıdır.

statements
isteğe bağlı. Özellik yordamı çağrıldığında Set çalışan bir veya daha fazla deyim.

End Set
Gerekli. Özellik yordamının Set tanımını sonlandırır.

Açıklamalar

Özelliği işaretlenmediği ReadOnlysürece her özelliğin bir Set özellik yordamı olmalıdır. Set yordamı özelliğin değerini ayarlamak için kullanılır.

Bir atama deyimi özelliğinde Set depolanacak bir değer sağladığında Visual Basic özelliğin yordamını otomatik olarak çağırır.

Visual Basic, özellik atamaları sırasında yordama Set bir parametre geçirir. için Setbir parametre sağlamazsanız, tümleşik geliştirme ortamı (IDE) adlı valueörtük bir parametre kullanır. parametresi, özelliğine atanacak değeri tutar. Bu değeri genellikle özel bir yerel değişkende depolar ve yordam çağrıldığında Get döndürürsiniz.

Özellik bildiriminin gövdesi, Özellik Deyimi ile deyimi arasında yalnızca özelliğin Getve SetEnd Property yordamlarını içerebilir. Bu yordamlar dışında hiçbir şey depolayamaz. Özellikle özelliğin geçerli değerini depolayamaz. Bu değeri özelliğin dışında depolamanız gerekir, çünkü özellik yordamlarından birinde depolarsanız, diğer özellik yordamı buna erişemez. Her zamanki yaklaşım, değeri özelliğiyle aynı düzeyde bildirilen bir Private değişkeninde depolamaktır. Uygulandığı özelliğin içinde bir Set yordam tanımlamanız gerekir.

deyiminde Set kullanmadığınız accessmodifier sürece yordam, varsayılan olarak öğesini içeren özelliğinin erişim düzeyine ayarlır Set .

Kurallar

  • Karma Erişim Düzeyleri. Okuma-yazma özelliği tanımlıyorsanız, isteğe bağlı olarak veya Set yordamı için Get farklı bir erişim düzeyi belirtebilirsiniz, ancak her ikisini birden belirtemezsiniz. Bunu yaparsanız, yordam erişim düzeyi özelliğin erişim düzeyinden daha kısıtlayıcı olmalıdır. Örneğin, özelliği bildirilirse Friendyordamını PrivateSet bildirebilirsiniz, ancak bildiremezsinizPublic.

    Bir WriteOnly özellik tanımlıyorsanız, Set yordam özelliğin tamamını temsil eder. özelliği için iki erişim düzeyi ayarlayacağından için Setfarklı bir erişim düzeyi bildiremezsiniz.

Davranış

  • Bir Özellik Yordamından geri dönülmektedir. Set Yordam çağıran koda geri döndüğünde, yürütme depolanacak değeri sağlayan deyimini izleyerek devam eder.

    Setözellik yordamları Return Deyimini veya Exit Deyimini kullanarak döndürülebilir.

    Exit Property ve Return deyimleri bir özellik yordamından hemen çıkışa neden olur. Yordamın herhangi bir yerinde herhangi bir Exit Property sayıda ve Return deyimi görüntülenebilir ve ve Return deyimlerini karıştırabilirsinizExit Property.

Örnek

Aşağıdaki örnek, bir özelliğin Set değerini ayarlamak için deyimini kullanır.

Class propClass
    Private propVal As Integer
    Property Prop1() As Integer
        Get
            Return propVal
        End Get
        Set(ByVal value As Integer)
            propVal = value
        End Set
    End Property
End Class

Ayrıca bkz.