Właściwość instrukcji
Deklaruje nazwę właściwości i procedur właściwości używane do przechowywania i pobierania wartości właściwości.
[ <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 ]
Części
Termin |
Definicja |
attributelist |
Opcjonalne.Lista atrybutów, które dotyczą tej właściwości lub Get lub Set procedury.Zobacz listy atrybutów. |
Default |
Opcjonalne.Określa, że ta właściwość jest domyślną właściwość klasy lub struktury, na którym jest zdefiniowana.Domyślne właściwości musi akceptować parametry i można ustawić a pobierane bez określania nazwy właściwości.Jeśli można zadeklarować właściwości jako Default, nie można użyć Private na właściwość lub albo procedury jego właściwości. |
accessmodifier |
Opcjonalne na Property instrukcji i co najwyżej jeden z Get i Set instrukcji.Może być jedną z następujących czynności:
|
propertymodifiers |
Opcjonalne.Może być jedną z następujących czynności:
|
Shared |
Opcjonalne.See Udostępnione (Visual Basic). |
Shadows |
Opcjonalne.See Cienie (Visual Basic). |
ReadOnly |
Opcjonalne.See Tylko do odczytu (Visual Basic). |
WriteOnly |
Opcjonalne.See WriteOnly (Visual Basic). |
Iterator |
Opcjonalne.Zobacz iteratora. |
name |
Wymagane.Nazwa właściwości.See Nazwy elementów deklarowanej (Visual Basic). |
parameterlist |
Opcjonalne.Zmienna lokalna lista nazw reprezentujących parametry tej właściwości i możliwe dodatkowe parametry Set procedury.See Lista parametrów (Visual Basic). |
returntype |
Required if OptionStrict is On.Typ danych wartości zwracanej przez tę właściwość. |
Implements |
Opcjonalne.Wskazuje, że ta właściwość implementuje jednej lub więcej właściwości, każde zdefiniowane w interfejsie implementowane przez klasy lub struktury zawierające tej właściwości.See Instrukcja implementuje. |
implementslist |
Jeśli wymagane Implements jest dostarczany.Lista właściwości realizowane. implementedproperty [ , implementedproperty ... ] Każdy implementedproperty ma następującą składnię i części: interface.definedname
CzęśćOpis
interface Wymagane.Nazwa interfejsu zaimplementowanego przez tę właściwość zawierający klasy lub struktury.
definedname Wymagane.Nazwa, przez który właściwość jest zdefiniowana w interface.
|
Get |
Opcjonalne.Wymagane, jeśli właściwość jest oznaczony WriteOnly.Uruchamia Get procedurę właściwość, która jest używane do zwracania wartości właściwości. |
statements |
Opcjonalne.Blok instrukcji do uruchomienia w Get lub Set procedury. |
End Get |
Kończy Get właściwość procedury. |
Set |
Opcjonalne.Wymagane, jeśli właściwość jest oznaczony ReadOnly.Uruchamia Set procedury właściwość, która jest używana do przechowywania wartości właściwości. |
End Set |
Kończy Set właściwość procedury. |
End Property |
Kończy definicję tej właściwości. |
Uwagi
Property Instrukcji wprowadzono deklaracji właściwości.Właściwość może mieć Get procedura (tylko do odczytu), Set procedura (tylko zapis) lub obu (odczytu i zapisu).Można pominąć Get i Set procedurę, używając właściwości auto wdrożone.Aby uzyskać więcej informacji, zobacz Właściwości auto wdrożone (Visual Basic).
Można użyć Property tylko na poziomie klasy.Oznacza to kontekście deklaracji właściwość musi być klasy, struktury, moduł lub interfejsu i nie może być plik źródłowy, obszar nazw, procedury lub bloku.Aby uzyskać więcej informacji, zobacz Konteksty deklaracji i poziomy dostępu domyślne (Visual Basic).
Właściwości korzystają domyślnie z publicznego dostępu.Można dostosować poziom dostępu do właściwości z modyfikatora dostępu na Property instrukcji, a można opcjonalnie dopasować jednej z jego właściwości procedur bardziej restrykcyjny poziom dostępu.
Visual Basic przekazuje parametr Set procedury podczas przypisania właściwości.Jeśli nie podasz parametru Set, zintegrowane środowisko programistyczne (IDE) wykorzystuje parametr niejawny o nazwie value.Ten parametr ma wartość przypisaną do właściwości.Zazwyczaj przechowywać tę wartość w prywatnej zmiennej lokalnej i zwraca go przy każdym Get wywołania procedury.
Zasady
Mieszane poziomy dostępu. Jeśli definiowania właściwości do odczytu i zapisu, można opcjonalnie określić poziom dostępu dla albo Get lub Set procedura, ale nie obu.W przypadku tej procedury poziom dostępu musi być bardziej restrykcyjny niż poziom dostępu do właściwości.Na przykład, jeśli właściwość jest zadeklarowana jako Friend, można zadeklarować Set procedury Private, ale nie Public.
Jeśli są definiowane ReadOnly lub WriteOnly właściwość, procedura pojedynczej właściwości (Get lub Set, odpowiednio) reprezentuje wszystkie właściwości.Nie można zadeklarować poziom dostępu dla procedury, ponieważ, ustawić dwa poziomy dostępu dla właściwości.
**Zwraca typ.**Property Instrukcji można zadeklarować typ danych zwracanych wartości.Można określić dowolny typ danych lub nazwę wyliczenia, struktury, klasy lub interfejsu.
Jeśli nie zostanie returntype, zwraca wartość właściwości Object.
Implementacja. Jeśli właściwość ta używa Implements musi mieć słowa kluczowego, zawierający klasy lub struktury Implements oświadczenie niezwłocznie po jego Class lub Structure instrukcji.Implements Instrukcja musi zawierać każdego interfejsu, określona w implementslist.Jednakże nazwy, przez który definiuje interfejs Property (w definedname) nie musi być taka sama jak nazwa tej właściwości (w name).
Zachowanie
Zwracanie z procedury właściwości. Gdy Get lub Set procedurę zwraca kod wywołujący, wykonywanie jest kontynuowane dla instrukcji po instrukcji, która ją wywołała.
Exit Property i Return instrukcji spowodować natychmiastowe zakończenia procedury właściwości.Dowolna liczba Exit Property i Return sprawozdań może pojawiać się wszędzie w procedurze i mogą mieszać Exit Property i Return instrukcji.
Zwraca wartość. Zwraca wartość z Get procedury, można przypisać wartości do nazwy właściwości lub umieścić je w Return instrukcji.Poniższy przykład przypisuje wartość zwracana nazwa właściwości quoteForTheDay , a następnie używa Exit Property instrukcji, aby powrócić.
Private quoteValue As String = "No quote assigned yet."
ReadOnly Property quoteForTheDay() As String Get quoteForTheDay = quoteValue Exit Property End Get End Property
Jeśli używasz Exit Property bez przypisywania wartości do name, Get procedurę zwraca domyślną wartość dla właściwości typu danych.
Return Instrukcja jednocześnie przypisuje Get procedurę zwraca wartość i kończy procedurę.Następujący przykład przedstawia to.
Private quoteValue As String = "No quote assigned yet."
ReadOnly Property quoteForTheDay() As String Get Return quoteValue End Get End Property
Przykład
Poniższy przykład deklaruje właściwością w klasie.
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
Zobacz też
Informacje
Lista parametrów (Visual Basic)
Koncepcje
Właściwości auto wdrożone (Visual Basic)