Datový typ objektu
Obsahuje adresy, které odkazují na objekty. Proměnné můžete přiřadit libovolný typ odkazu (řetězec, pole, třída nebo Object rozhraní). Proměnná Object může také odkazovat na data libovolného typu hodnoty (číselný, Boolean , , , struktura nebo Char Date výčet).
Poznámky
Datový Object typ může odkazovat na data libovolného datového typu, včetně jakékoli instance objektu, který vaše aplikace rozpozná. Použijte, Object když v době kompilace nevíte, na jaký datový typ proměnná může odkazovat.
Výchozí hodnota je Object Nothing (nulový odkaz).
Typy dat
Proměnné, konstantu nebo výraz libovolného datového typu můžete Object přiřadit. K určení datového typu, na který proměnná aktuálně odkazuje, můžete použít Object GetTypeCode metodu System.Type třídy . Toto dokládá následující příklad.
Dim myObject As Object
' Suppose myObject has now had something assigned to it.
Dim datTyp As Integer
datTyp = Type.GetTypeCode(myObject.GetType())
Datový Object typ je odkazový typ. Při Visual Basic typu hodnoty však proměnnou považuje Object za typ hodnoty.
Storage
Bez ohledu na datový typ, na který odkazuje, proměnná neobsahuje samotnou hodnotu dat, ale Object ukazatel na hodnotu. Vždy používá čtyři bajty v paměti počítače, ale nezahrnuje úložiště pro data představující hodnotu proměnné. Vzhledem k kódu, který používá ukazatel k vyhledání dat, jsou proměnné, které udržují typy hodnot, o něco pomalejší než explicitně Object typované proměnné.
Tipy k programování
Důležité informace o interoperabilitě. Pokud pracujete s komponentami, které nejsou napsané pro .NET Framework, například automatizace nebo objekty COM, mějte na paměti, že typy ukazatelů v jiných prostředích nejsou kompatibilní s Visual Basic
Objecttypem.Výkon. Proměnná, kterou deklarujete s typem , je
Objectdostatečně flexibilní, aby obsahovala odkaz na libovolný objekt. Když však vyvoláte metodu nebo vlastnost pro takovou proměnnou, vždy dojde k pozdní vazbě (za běhu). Pokud chcete vynutit časnou vazbu (v době kompilace) a zvýšit výkon, deklarujte proměnnou s konkrétním názvem třídy nebo ji přetypujte na konkrétní datový typ.Když deklarujete objektovou proměnnou, zkuste místo generalizovaného typu použít OperatingSystem konkrétní typ třídy, například
Object. Měli byste také použít nej specifickou třídu, která je k dispozici, například místo , abyste měli přístup k jejím vlastnostem a TextBox Control metodám. K vyhledání dostupných názvů tříd můžete obvykle použít seznam Tříd v Prohlížeči objektů.Rozšíření. Všechny datové typy a všechny odkazové typy se šířují na
Objectdatový typ. To znamená, že můžete převést libovolný typObjectna , aniž by došlo k System.OverflowException chybě.Pokud ale převádíte mezi typy hodnot a , Visual Basic operace nazývané
Objectboxing a rozbalení, což zpomalí provádění.Zadejte Znaky.
Objectnemá žádný znak literálového typu ani znak typu identifikátoru.Typ architektury. Odpovídající typ v .NET Framework je System.Object třída .
Příklad
Následující příklad ukazuje proměnnou Object odkazující na instanci objektu.
Dim objDb As Object
Dim myCollection As New Collection()
' Suppose myCollection has now been populated.
objDb = myCollection.Item(1)