Skip to content
Informatik · Klasse 11

Ideen für aktives Lernen

Klassen und Objekte

Aktive Modellierung hilft Schülerinnen und Schülern, abstrakte Konzepte wie Klassen und Objekte greifbar zu machen. Durch das Erstellen von Bauplänen und das Anwenden auf konkrete Instanzen verstehen sie den Unterschied zwischen statischen Vorlagen und dynamischen Entitäten. Diese Methode fördert nicht nur das technische Verständnis, sondern auch die Fähigkeit, reale Phänomene strukturiert abzubilden.

KMK BildungsstandardsKMK: Sekundarstufe II - ModellierenKMK: Sekundarstufe II - Darstellen und Interpretieren
25–45 Min.Partnerarbeit → Ganze Klasse4 Aktivitäten

Aktivität 01

Concept-Mapping30 Min. · Partnerarbeit

Paarprogrammierung: Klasse Auto modellieren

Paare definieren eine Klasse Auto mit Attributen wie Marke, Farbe und Methode fahren(). Sie erzeugen zwei Objekte und rufen Methoden auf. Abschließend vergleichen sie die Objekte im Debugger.

Wie entscheiden wir, welche Eigenschaften eines Objekts für unser Modell relevant sind?

ModerationstippFordern Sie die Paare in der Paarprogrammierung auf, ihre Klassendefinition vor der Implementierung zu skizzieren, um das Design zu reflektieren.

Worauf zu achten istGeben Sie den Schülern eine einfache Klassendefinition (z.B. 'Hund' mit Attributen 'Name' und 'Rasse'). Bitten Sie sie, zwei Instanzen dieser Klasse zu erstellen und für jede Instanz die Attribute mit konkreten Werten zu füllen.

VerstehenAnalysierenErschaffenSelbstwahrnehmungSelbststeuerung
Komplette Unterrichtsstunde erstellen

Aktivität 02

Concept-Mapping45 Min. · Kleingruppen

Gruppenmodellierung: reale Objekte skizzieren

Gruppen wählen ein reales Szenario wie eine Schule, zeichnen Klassen (z.B. Schüler) und erzeugen Instanzen auf Papier. Sie diskutieren relevante Eigenschaften und erstellen Pseudocode.

Inwiefern spiegelt die Objektorientierung unsere menschliche Wahrnehmung der Welt wider?

ModerationstippBitten Sie die Gruppen bei der Modellierung realer Objekte, ihre Skizzen mit Attributen zu beschriften und die Wahl zu begründen.

Worauf zu achten istZeigen Sie ein Code-Snippet, das ein Objekt erstellt. Fragen Sie: 'Welche Klasse wurde hier instanziiert?' und 'Nennen Sie zwei Attribute, die dieses Objekt haben könnte, basierend auf der Klasse.'

VerstehenAnalysierenErschaffenSelbstwahrnehmungSelbststeuerung
Komplette Unterrichtsstunde erstellen

Aktivität 03

Concept-Mapping35 Min. · Ganze Klasse

Klassenpräsentation: Speicher simulieren

Die Klasse teilt sich in Gruppen auf, simuliert Speicherblöcke mit Karten für Objekte. Bei 'new' legen sie neue Karten aus und initialisieren Attribute gemeinsam.

Erklären Sie, was im Speicher des Computers passiert, wenn ein neues Objekt erzeugt wird.

ModerationstippLassen Sie die Schülerinnen und Schüler bei der Speichersimulation die Instanzen farbig markieren, um die Trennung von Klasse und Objekt sichtbar zu machen.

Worauf zu achten istDiskutieren Sie die Modellierung eines 'Buches'. Welche Attribute sind für eine Bibliothek relevant (Titel, Autor, ISBN)? Welche für einen Leser (aktuelles Kapitel, Lesefortschritt)? Wie beeinflusst die Wahl der Attribute die Nützlichkeit des Modells?

VerstehenAnalysierenErschaffenSelbstwahrnehmungSelbststeuerung
Komplette Unterrichtsstunde erstellen

Aktivität 04

Concept-Mapping25 Min. · Einzelarbeit

Individuelle Codieraufgabe: Objekte erweitern

Jeder Schüler erweitert eine vorgegebene Klasse Bankkonto um neue Instanzen und testet Interaktionen. Ergebnisse werden in einem Klassenrepository geteilt.

Wie entscheiden wir, welche Eigenschaften eines Objekts für unser Modell relevant sind?

ModerationstippGeben Sie der individuellen Codieraufgabe klare Erweiterungsziele vor, z.B. 'Fügen Sie ein neues Attribut hinzu und passen Sie den Konstruktor an'.

Worauf zu achten istGeben Sie den Schülern eine einfache Klassendefinition (z.B. 'Hund' mit Attributen 'Name' und 'Rasse'). Bitten Sie sie, zwei Instanzen dieser Klasse zu erstellen und für jede Instanz die Attribute mit konkreten Werten zu füllen.

VerstehenAnalysierenErschaffenSelbstwahrnehmungSelbststeuerung
Komplette Unterrichtsstunde erstellen

Vorlagen

Vorlagen, die zu diesen Informatik-Aktivitäten passen

Nutzen, bearbeiten, drucken oder teilen.

Einige Hinweise zum Unterrichten dieser Einheit

Erfahrene Lehrkräfte starten mit greifbaren Beispielen aus dem Alltag der Schüler, bevor sie zur abstrakten Syntax übergehen. Vermeiden Sie es, Klassen und Objekte nur theoretisch zu erklären. Nutzen Sie Debugger, um die Speicherbelegung Schritt für Schritt zu zeigen. Wiederholen Sie regelmäßig die Grundfrage: 'Was ist der Bauplan, was sind die Häuser?'

Am Ende der Einheit sollten die Lernenden Klassen als Baupläne definieren können, Objekte als Instanzen davon erstellen und Attribute sinnvoll zuordnen. Zudem erwarten wir, dass sie erklären können, warum verschiedene Objekte derselben Klasse unterschiedliche Werte speichern dürfen. Die Aktivitäten zeigen, ob sie diese Konzepte anwenden und diskutieren können.


Vorsicht vor diesen Fehlvorstellungen

  • During Paarprogrammierung: Klasse Auto modellieren, achten Sie darauf, dass Schülerinnen und Schüler nicht versuchen, die Klasse selbst als Objekt zu verwenden.

    Fordern Sie die Paare auf, zuerst die Klasse ohne Instanziierung zu schreiben und dann mit 'Auto meinAuto = new Auto()' ein konkretes Objekt zu erstellen. Lassen Sie prüfen, ob 'Auto' als Typ und 'meinAuto' als Instanz behandelt wird.

  • During Gruppenmodellierung: reale Objekte skizzieren, beobachten Sie, ob Schüler annehmen, dass alle Instanzen identische Attribute haben.

    Geben Sie vor, mindestens zwei unterschiedliche Objekte derselben Klasse zu skizzieren (z.B. zwei Autos mit verschiedenen Farben und Geschwindigkeiten). Diskutieren Sie, warum Attribute wie 'Farbe' variieren können, während andere (z.B. 'AnzahlRäder') gleich bleiben.

  • During Klassenpräsentation: Speicher simulieren, achten Sie darauf, ob Schüler glauben, dass das Deklarieren einer Klasse bereits Instanzen erzeugt.

    Lassen Sie die Schülerinnen und Schüler mit einem Debugger nachvollziehen, dass nach 'class Auto {}' nur der Bauplan existiert. Erst 'Auto a = new Auto()' belegt Speicher für ein konkretes Objekt.


In dieser Übersicht verwendete Methoden