Udostępnij za pośrednictwem


Różnice między właściwościami i zmiennymi w Visual Basic

Zmienne i właściwości reprezentują wartości, do których można uzyskać dostęp. Istnieją jednak różnice w przechowywaniu i implementacji.

Zmienne

Zmienna odpowiada bezpośrednio lokalizacji pamięci. Definiujesz zmienną za pomocą pojedynczej instrukcji deklaracji. Zmienną może być zmienna lokalna, zdefiniowana wewnątrz procedury i dostępna tylko w ramach tej procedury lub może być zmienną składową zdefiniowaną w module, klasie lub strukturze, ale nie wewnątrz żadnej procedury. Zmienna składowa jest również nazywana polem.

Właściwości

Właściwość jest elementem danych zdefiniowanym w module, klasie lub strukturze. Należy zdefiniować właściwość z blokiem kodu między instrukcjami Property i End Property . Blok kodu zawiera procedurę Get , procedurę Set lub oba te elementy. Procedury te są nazywane procedurami właściwości lub metodami dostępu do właściwości. Oprócz pobierania lub przechowywania wartości właściwości mogą również wykonywać akcje niestandardowe, takie jak aktualizowanie licznika dostępu.

Różnice

W poniższej tabeli przedstawiono pewne ważne różnice między zmiennymi i właściwościami.

Punkt różnicy Zmienna Majątek
Deklaracja Pojedyncza deklaracja Seria instrukcji w bloku kodu
Implementacja Pojedyncza lokalizacja magazynu Kod wykonywalny (procedury właściwości)
Przechowywanie danych Bezpośrednio skojarzone z wartością zmiennej Zazwyczaj pamięć wewnętrzna nie jest dostępna poza klasą lub modułem, który zawiera daną właściwość.

Wartość właściwości może lub nie istnieje jako przechowywany element 1
Kod wykonywalny Żaden Musi mieć co najmniej jedną procedurę
Dostęp do odczytu i zapisu Odczyt/zapis lub tylko do odczytu Odczyt/zapis, tylko do odczytu lub tylko do zapisu
Akcje niestandardowe (oprócz akceptowania lub zwracania wartości) Niemożliwe Można wykonać w ramach ustawienia lub pobierania wartości właściwości

1 W przeciwieństwie do zmiennej wartość właściwości może nie odpowiadać bezpośrednio jednemu elementowi magazynu. Magazyn może być podzielony na fragmenty dla wygody lub zabezpieczeń lub wartość może być przechowywana w postaci zaszyfrowanej. W takich przypadkach Get procedura zmontuje elementy lub odszyfruje przechowywaną wartość, a Set procedura szyfruje nową wartość lub dzieli ją na magazyn składowy. Wartość właściwości może być efemeryczna, na przykład godzina dnia, w tym przypadku Get procedura oblicza ją na bieżąco za każdym razem, gdy uzyskujesz dostęp do właściwości.

Zobacz także