Menu
Coddy logo textTech

Klassen vs. Objekte

Teil des Abschnitts Objektorientierte Programmierung der Dart-Journey von Coddy — Lektion 4 von 110.

Klassen und Objekte dienen unterschiedlichen Zwecken. Eine Klasse ist ein Bauplan, während ein Objekt das ist, was Sie aus diesem Bauplan erstellen.

Hier ist ein Beispiel für eine Klasse mit Instanzvariablen:

class Dog {
  String name = '';
  String breed = '';
}

Die innerhalb einer Klasse deklarierten Variablen (wie name und breed) gehören zu jedem Objekt, das aus dieser Klasse erstellt wurde. Wir werden Instanzvariablen später im Detail untersuchen.

Erstellen Sie mehrere Objekte aus derselben Klasse:

Dog dog1 = Dog();
Dog dog2 = Dog();

Jedes Objekt kann seine eigenen eindeutigen Werte für diese Variablen haben:

dog1.name = 'Nicky';
dog1.breed = 'Siberian Husky';

dog2.name = 'Teemon';
dog2.breed = 'Labrador';

Verwenden Sie den Punkt-Operator ., um auf die Variablen eines Objekts zuzugreifen:

print('${dog1.name} is a ${dog1.breed}');
print('${dog2.name} is a ${dog2.breed}');

Ausgabe:

Nicky is a Siberian Husky
Teemon is a Labrador

Wesentlicher Unterschied: Die Klasse Dog definiert die Struktur, die alle Hunde teilen, während dog1 und dog2 einzelne Objekte mit ihren eigenen, einzigartigen Daten sind.

challenge icon

Aufgabe

Einfach

Vervollständigen Sie den Code, um zwei Studenten-Objekte aus der Klasse Student zu erstellen und deren Variablen zu setzen.

  • student.dart: Enthält die Klasse Student (gesperrt)
  • driver.dart: Erstellen Sie zwei Objekte und setzen Sie deren Daten

Setzen Sie die folgenden Werte:

  • student1: Name ist 'Alice' mit der Note 'A'
  • student2: Name ist 'Bob' mit der Note 'B'

Spickzettel

Eine Klasse ist ein Bauplan, der die Struktur und das Verhalten von Objekten definiert. Ein Objekt ist eine Instanz, die aus einer Klasse erstellt wurde.

Definieren Sie eine Klasse mit Instanzvariablen:

class Dog {
  String name = '';
  String breed = '';
}

Erstellen Sie Objekte aus einer Klasse:

Dog dog1 = Dog();
Dog dog2 = Dog();

Greifen Sie auf Objektvariablen zu und ändern Sie diese mit dem Punkt-Operator .:

dog1.name = 'Nicky';
dog1.breed = 'Siberian Husky';

dog2.name = 'Teemon';
dog2.breed = 'Labrador';

Greifen Sie auf Objektvariablen zu:

print('${dog1.name} is a ${dog1.breed}');
// Ausgabe: Nicky is a Siberian Husky

Probier es selbst

import 'student.dart';

void main() {
  // TODO: Erstelle zwei Student-Objekte


  // TODO: Setze name und grade für student1 (name: 'Alice', grade: 'A')


  // TODO: Setze name und grade für student2 (name: 'Bob', grade: 'B')


  print('${student1.name} has grade ${student1.grade}');
  print('${student2.name} has grade ${student2.grade}');
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Objektorientierte Programmierung