c# : generics

  1. Inleiding
  2. Eenvoudig voorbeeld
  3. Generic class met twee typeparameters
  4. Algemene syntax
  5. Type Constraints

Inleiding

Een van de vernieuwingen sinds C# 2.0 is de mogelijkheid om met generics te werken. De term generic betekent geparameteriseerde types. Door het gebruik van generics kan je klassen, interfaces en methoden maken die op een type-safe manier werken met verschillende datatypes. Met generics kan je een algoritme één keer ontwerpen en gebruiken voor verschillende gegevenstypes.

Eenvoudig voorbeeld

In dit eerste eenvoudig voorbeeld maken we een consoletoepassing die het gebruik van generics demonstreert.

Bespreking:

Generic class met twee typeparameters

Algemene syntax

De algemene vorm om een generische klasse te maken is als volgt:
class klassenaam<typeparameterlijst> 
{ 
	 ...
}
De algemene vorm om een object van een generische klasse te maken:
klassenaam<typeargumentlijst> variabelenaam =
      new klassenaam<typeargumentlijst>(constructorargumentlijst);

Type constraints

In de voorgaande voorbeelden konden de typeparameters om het even welk type aannemen: int, double, string, FileStream, of elk ander type.

Soms is het nuttig om de mogelijke types te beperken.
Dit kan je doen door constraints op te geven aan de typeparameters:

class klassenaam<typeparameterlijst> where typeparameter : constraints 
{ 
	...
}

Base class constraint

Bij dit type constraint geef je op dat het type meegegeven aan de generic class een bepaalde klasse moet zijn of een klasse die overerft van deze klasse.
class Test<T> where T : A
Het type T dat gebruikt wordt in de klasse Test moet van klasse A zijn of een klasse die overerft van A.

Meer tutorials:
leer ook: html | xhtml | css | asp | asp.net | c# | ado.net | linq | ajax | java | javascript
Valid HTML 4.01! Valid CSS! © - Cursusweb