0Pricing
Dart Academy · Lektion

Erweiterte Enums mit Feldern und Methoden

Jeden Wert mit Daten und Verhalten versehen

Erweiterte Enums mit Feldern und Methoden ist eine kostenlose Dart Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Dart Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Enums können Daten enthalten

Modernes Dart ermöglicht es, dass jedes Enum-Member eigene Daten enthält. Diese erweiterten Enums machen aus einfachen Bezeichnungen aussagekräftige Werte.

Ein Feld hinzufügen

Deklarieren Sie ein final-Feld im Enum und übergeben Sie für jedes Member einen Wert. Nun enthält jedes Member diese zusätzlichen Daten.

enum Planet {
  earth(9.8), mars(3.7);
  final double gravity;
}

Ein const-Konstruktor ist erforderlich

Erweiterte Enums benötigen einen const-Konstruktor, um ihre Felder zu setzen. Er wird einmal für jedes Member ausgeführt, während die Werte erstellt werden.

const Planet(this.gravity);

Member übergeben Konstruktorargumente

Die Werte in Klammern sind Konstruktorargumente. earth(9.8) bedeutet, dass earth mit einer auf 9.8 gesetzten Gravitation erstellt wird.

earth(9.8), mars(3.7);

Das Feld eines Members lesen

Greifen Sie wie auf jede Eigenschaft über das Member auf die Daten zu. Jedes Member liefert seinen eigenen gespeicherten Wert zurück.

print(Planet.earth.gravity); // 9.8

Mehrere Felder

Ein erweitertes Enum kann mehrere Felder gleichzeitig enthalten. Führen Sie sie im Konstruktor auf und übergeben Sie für jedes Member die entsprechenden Werte.

enum Coin { penny(1, "1c"), dime(10, "10c"); }

Eine Methode hinzufügen

Erweiterte Enums können auch Methoden definieren. Die Methode kann die Member-Felder verwenden und so jedem Wert echtes Verhalten geben.

double weightOf(double mass) => mass * gravity;

Eine Enum-Methode aufrufen

Rufen Sie die Methode auf jedem Member wie bei einem normalen Objekt auf. Sie wird mit den Feldwerten dieses Members ausgeführt.

print(Planet.mars.weightOf(70)); // 259.0

Einen Getter hinzufügen

Auch ein berechneter Getter funktioniert. Er gibt einen aus den Feldern abgeleiteten Wert zurück, ohne etwas Neues zu speichern.

bool get isStrong => gravity > 5;

Es bleiben Enums

Trotz ihrer zusätzlichen Möglichkeiten behalten erweiterte Enums values, index und name. Durch das Hinzufügen von Feldern und Methoden verlieren Sie nichts.

print(Planet.values.length); // 2

Wann eine Erweiterung sinnvoll ist

Verwenden Sie ein erweitertes Enum, wenn jede Auswahl zugehörige Daten besitzt, etwa eine Farbe mit einem Hexadezimalcode. So bleiben Daten und Auswahl zusammen.

Kurztest

Was muss ein erweitertes Enum mit Feldern immer enthalten?

Zusammenfassung: Erweiterte Enums

Sie haben gelernt, dass erweiterte Enums über einen const-Konstruktor Felder und Methoden enthalten können, sodass jedes Member eigene Daten und eigenes Verhalten besitzt. 🚀

Häufig gestellte Fragen

Ist die Lektion „Erweiterte Enums mit Feldern und Methoden“ kostenlos?

Ja — der vollständige Text von „Erweiterte Enums mit Feldern und Methoden“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Dart Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Erweiterte Enums mit Feldern und Methoden“?

Jeden Wert mit Daten und Verhalten versehen Du übst Dart Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Dart Academy zu starten?

Keine Vorkenntnisse erforderlich. Dart Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „Erweiterte Enums mit Feldern und Methoden“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Dart Academy-Lektion Code schreiben und ausführen?

Ja. Jede Dart Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Einfache Enums deklarieren und verwenden
  2. Enum-Werte, index und name
  3. Erweiterte Enums mit Feldern und Methoden
  4. Enums vollständig mit switch verarbeiten
← Zurück zu Dart Academy