Standard- und parametrisierte Konstruktoren
Felder beim Erstellen von Objekten initialisieren
Standard- und parametrisierte Konstruktoren ist eine kostenlose Dart Academy-Lektion auf CoddyKit. Dies ist Lektion 1 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.
Was ein Konstruktor tut
Ein Konstruktor ist die spezielle Methode, die ein neues Objekt erstellt und dessen Ausgangszustand einrichtet, wenn Sie den Klassennamen schreiben. 🏗️
Der Standardkonstruktor
Wenn Sie überhaupt keinen Konstruktor schreiben, stellt Dart Ihnen kostenlos einen Standardkonstruktor ohne Argumente bereit, der ein leeres Objekt erstellt.
class Dog {}
var d = Dog(); // uses the default constructorEin Konstruktor mit Parametern
Fügen Sie Parameter hinzu, damit der Aufrufer Werte direkt beim Erstellen übergeben kann. Ein parametrisierter Konstruktor weist diese Werte den Objektfeldern zu.
class Dog {
String name;
Dog(this.name);
}Das Schlüsselwort this in Parametern
Die Kurzschreibweise this.name in einem Parameter bedeutet, dass das Argument direkt im gleichnamigen Feld gespeichert wird. Dadurch sparen Sie eine Zeile.
class Dog {
String name;
Dog(this.name);
}Ohne die Abkürzung this
Sie können die Zuweisung stattdessen manuell im Rumpf vornehmen. Hier unterscheidet this das Feld vom Parameter, wenn beide denselben Namen haben.
class Dog {
String name;
Dog(String name) {
this.name = name;
}
}Ein Objekt erstellen
Rufen Sie die Klasse wie eine Funktion auf und übergeben Sie die Argumente in der richtigen Reihenfolge. Dart führt den Konstruktor aus und gibt Ihnen eine fertige Instanz.
var d = Dog("Rex");
print(d.name); // RexMehrere Parameter in Reihenfolge
Listen Sie die Parameter von links nach rechts auf. Aufrufer müssen sie in derselben Positionsreihenfolge übergeben. Das eignet sich gut für zwei oder drei eindeutig benannte Felder.
class Point {
int x, y;
Point(this.x, this.y);
}Logik zum Rumpf hinzufügen
Im Konstruktor-Rumpf kann nach dem Setzen der Felder zusätzliche Einrichtung erfolgen, etwa eine Validierung oder Protokollierung. Halten Sie diesen Rumpf klein und fokussiert.
class Box {
int size;
Box(this.size) {
print("Box made: $size");
}
}Konstruktoren haben keinen Rückgabetyp
Sie schreiben niemals einen Rückgabetyp und geben niemals einen Wert zurück. Ein Konstruktor liefert immer das neue Objekt zurück, daher genügt allein der Name.
class Cat {
Cat(); // no void, no return
}Ein unbenannter Konstruktor pro Klasse
Eine Klasse darf nur einen einzigen unbenannten Konstruktor haben. Benötigen Sie weitere Möglichkeiten zum Erstellen? Dann verwenden Sie als Nächstes benannte Konstruktoren.
Standardkonstruktoren verschwinden, sobald Sie einen hinzufügen
Sobald Sie irgendeinen Konstruktor deklarieren, stellt Dart den kostenlosen Konstruktor ohne Argumente nicht mehr bereit. Fügen Sie ihn selbst wieder hinzu, wenn Sie weiterhin eine leere Erstellung wünschen.
class User {
String name;
User(this.name);
User.empty() : name = "";
}Kurze Überprüfung
Kurze Überprüfung zu Standardkonstruktoren und parametrisierten Konstruktoren.
Zusammenfassung: Objekte erstellen
Sie haben Konstruktoren kennengelernt: den kostenlosen Standardkonstruktor, parametrisierte Konstruktoren, die Abkürzung this und die Tatsache, dass eine eigene Deklaration den Standardkonstruktor entfernt. Als Nächstes folgen benannte Konstruktoren. ✨
Häufig gestellte Fragen
Ist die Lektion „Standard- und parametrisierte Konstruktoren“ kostenlos?
Ja — der vollständige Text von „Standard- und parametrisierte Konstruktoren“ 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 „Standard- und parametrisierte Konstruktoren“?
Felder beim Erstellen von Objekten initialisieren 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 1 von 4.
Wie lange dauert die Lektion „Standard- und parametrisierte Konstruktoren“?
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
- Standard- und parametrisierte Konstruktoren
- Benannte Konstruktoren für klare Absichten
- Initialisierungslisten und Weiterleitung
- Factory- und const-Konstruktoren