*   >> Lese Utdanning Artikler >> education >> languages

Hvordan lage en generisk type i vb i Vb.net

du er nødt til å følge denne trinn Først undersøke følgende klasser. Klasser Obj og Gen utføre nøyaktig de samme oppgavene, men Obj bruker Object klassen for å muliggjøre noen form for å bli lagret i sitt felt, mens Gen bruker generics:

'VB

Klasse Obj

Offentlig V1 Som Object

Offentlig V2 As Object

Public Sub New (ByVal _V1 As Object, ByVal _V2 As Object) V1 = _V1

V2 = _V2

End Sub

End Class

Klasse Gen (Of T, U) Offentlig V1 Som T Public V2 Som U

Public Sub New (ByVal _V1 Som T, ByVal _V2 som U) V1 = _V1

V2 = _V2

End Sub

End Class

//C #

klasse Obj

{

offentlig Object t;

offentlig Object u;

offentlig Obj (Object _t, Objekt _u)

{

t = _t;

u = _u;

}

}

klasse Gen

{

offentlig T t;

offentlig U u;

offentlig Gen (T _t, U _u)

{

t = _t;

u = _u;

}

}

Som du kan se, har Obj klasse to medlemmer av typen Object.

Gen klasse har to felt medlemmer av type T og U. forbruker koden avgjør hvilke typer for T og U. Avhengig av hvordan forbruker koden bruker Gen klassen, kan T og U være en streng, en int, en egendefinert klasse, . eller en kombinasjon av disse

Det er en betydelig begrensning til å skape en generisk klasse (uten begrensninger, som drøftet i avsnittet "Slik bruker begrensninger," senere i dette kapittelet): Generic koden er gyldig bare hvis den kompilerer for stadig y mulig konstruert forekomst av generiske, enten et Int, en snor, eller en hvilken som helst annen klasse.

I hovedsak, er du begrenset til de mulighetene av basen Object klassen når du skriver generisk kode. Derfor kan du ringe toString eller GetHashCode metode innen klassen din, men du kan ikke bruke + operatør eller> operatør. De samme begrensningene ikke gjelder for forbruker kode fordi den forbruker kode erklærer en bestemt type for den generiske.

Hvordan Konsumere en generisk type

Når du bruker en generisk type, må du angi typene for alle generika brukt.

Betrakt følgende Console programkode, som bruker Gen og obj klasser:

'VB

' Legg to strenger bruker Obj klassen

Dim oa Som Obj = Ny Obj ("Hello", "World!") Console.WriteLine (CTast (oa.V1, String) + CTast (oa.V2, String))

'Legg to strenger bruker Gen klassen

Dim ga Som New

Page   <<       [1] [2] [3] >>
Copyright © 2008 - 2016 Lese Utdanning Artikler,https://utdanning.nmjjxx.com All rights reserved.