Dart Academy · Les

Generieke klassen en methoden

Uw eigen typen parametriseren

Les 2 van 413 stappen

Generieke klassen en methoden is een gratis Dart Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Dart Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Dart Academy bevat in totaal 4 lessen.

Je eigen generics

Ingebouwde typen zoals List zijn generic, en je kunt ze zelf ook schrijven. Met een typeparameter kan je klasse zich aanpassen aan elk type dat de aanroeper kiest. 🧩

De typeparameter een naam geven

Je voegt een typeparameter tussen punthaken toe achter de klassenaam. De letter T is een gebruikelijke tijdelijke aanduiding voor een echt type.

class Box<T> {
  T value;
  Box(this.value);
}

T binnenin gebruiken

Binnen de klasse gedraagt T zich als elke andere typenaam. Je kunt het overal in de body gebruiken voor velden, parameters en retourwaarden.

class Box<T> {
  T value;
  Box(this.value);
  T get() => value;
}

Het type invullen

Wanneer je het object maakt, kies je het echte type. Hier wordt T int, dus deze box bevat alleen gehele getallen.

var b = Box<int>(42);
int n = b.get();

Laat Dart het afleiden

Vaak kun je het expliciete type weglaten, omdat Dart het uit het argument leest. Typeafleiding ziet een String en stelt T voor je in.

var b = Box('hi');

Meerdere typeparameters

Een klasse kan meer dan één typeparameter accepteren, gescheiden door komma's. Een paar dat twee verschillende typen bevat, is een klassiek voorbeeld.

class Pair<A, B> {
  A first;
  B second;
  Pair(this.first, this.second);
}

Generieke methoden

Je kunt ook één enkele methode generic maken, zelfs in een niet-generieke klasse. Zet de typeparameter direct vóór de parameterlijst.

T firstOf<T>(List<T> items) => items[0];

Methoden leiden typen ook af

Een generieke methode leidt het type meestal af uit de argumenten die je meegeeft. Roep de methode gewoon aan en Dart doet de rest.

var n = firstOf([1, 2, 3]);
var s = firstOf(['a', 'b']);

Typeveiligheid keert terug

Omdat de methode T bijhoudt, behoudt het resultaat het juiste type. firstOf op een String-lijst levert weer een String op, zonder dat je hoeft te casten.

String x = firstOf(['a', 'b']);

Herbruikbaar, niet repetitief

Eén generieke definitie vervangt talloze versies die je anders zou kopiëren en plakken. Je schrijft de logica één keer en gebruikt die voor int, String en elk aangepast type.

Kies duidelijke namen

Eén letters zoals T, E of K zijn gebruikelijk, maar een beschrijvende naam kan helpen. In complexe code is duidelijkheid belangrijker dan beknoptheid.

Korte controle

Waar plaats je een typeparameter bij een klasse?

Samenvatting

Je hebt geleerd hoe je een typeparameter zoals T toevoegt aan je eigen klassen en methoden. Dart vult die vaak af via typeafleiding, waardoor je code herbruikbaar en veilig blijft. ✅

Gratis beginnen

Leer Dart met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
30
Lessen
120

Veelgestelde vragen

Is de les “Generieke klassen en methoden” gratis?

Ja — de volledige tekst van “Generieke klassen en methoden” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Dart Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Dart Academy bevat in totaal 4 lessen.

Wat leer ik in “Generieke klassen en methoden”?

Uw eigen typen parametriseren Je oefent met Dart Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Dart Academy te beginnen?

Ervaring vooraf is niet nodig. Dart Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Generieke klassen en methoden”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Dart Academy?

Ja. Elke les over Dart Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Waarom generics beter zijn dan dynamic
  2. Generieke klassen en methoden
  3. Begrensde typeparameters met extends
  4. Generieke collecties in de praktijk
← Terug naar Dart Academy