*   >> Lezen Onderwijs artikelen >> education >> languages

Hoe maak je een generieke type in VB in Vb.net

Maak je moet dit te volgen Eerste stappen, onderzoekt de volgende klassen. Klassen Obj en Gen voeren precies dezelfde taken, maar Obj maakt gebruik van de klasse Object om elk type kunnen worden opgeslagen in het veld, terwijl Gen maakt gebruik van generieke geneesmiddelen:

'VB

Class Obj

Openbare V1 als Voorwerp

Openbare V2 als Voorwerp

Public Sub New (ByVal _V1 als Voorwerp, ByVal _V2 als Voorwerp) V1 = _V1

V2 = _V2

End Sub

Eind Class

Class Gen (Of T, U) Openbare V1 Zoals T Openbare V2 Als U

Public Sub New (ByVal _V1 Als T, ByVal _V2 als U) V1 = _V1

V2 = _V2

End Sub

Eind Class

//C #

klasse Obj

{

openbare Object t;

openbare Object u;

openbare Obj (Object _t, Object _u)

{

t = 't;

u = _u;

}

}

class Gen

{

openbare T t;

openbare U u;

openbare Gen (T 't, U _u)

{

t = _t;

u = _u;

}

}

Zoals u kunt zien, de klasse Obj heeft twee leden van het type object.

De Gen klasse heeft twee velden leden van het type T en U. De consumeren code bepaalt de typen T en U. Afhankelijk van hoe het consumeren code wordt de klasse Gen, T en U kan een tekenreeks, een int, een aangepaste klasse, . of een combinatie daarvan

Er is een aanzienlijke beperking tot het creëren van een algemene klasse (zonder beperkingen, zoals besproken in de paragraaf verderop in dit hoofdstuk "Hoe Constraints, Gebruik"): Generic code is alleen geldig indien stelt voorgoed y eventuele geconstrueerd instantie van de generieke of een Int, een koord of andere klassen.

In wezen, bent u beperkt tot het over mogelijkheden banden van de basis klasse Object bij het schrijven van generieke code. Daarom zou je de ToString of GetHashCode methode binnen de klasse noemen, maar je kon de + bediener of> operator niet gebruiken. Dezelfde beperkingen gelden niet voor de consumptie van code, omdat de consumptie van code verklaart een specifiek type voor de generieke.

Hoe maak je een generieke type

Consumeer

Wanneer u een algemeen type verbruiken, moet u opgeven de types voor alle generieke geneesmiddelen gebruikt.

Beschouw de volgende console applicatie code, die de Gen en Obj klassen gebruikt:

'VB

' Voeg twee snaren met behulp van de klasse Obj

Dim oa als Obj = Nieuwe Obj ("Hallo,", "World!") Console.WriteLine (CType (oa.V1, String) + CType (oa.V2, String))

'Voeg twee snaren met behulp van de Gen klasse

Dim ga als Nieuwe Gen (Van String, Str

Page   <<       [1] [2] [3] >>
Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.