2.7 KiB
Kapitel 01: Die erste Klasse – Was sind Klassen & Objekte?
Herzlich willkommen in der Welt der objektorientierten Programmierung (kurz: OOP)! 🐶🐱
Bisher hast du in Python mit Variablen, Listen, Dictionaries und Funktionen gearbeitet. Das hat super funktioniert! Doch wenn Programme größer werden, wird es schnell unübersichtlich.
Hier kommen Klassen ins Spiel.
🏗️ Die wichtigste Analogie: Bauplan vs. Objekt
Stell dir vor, du bist Architektin oder Bäckermeisterin:
- Eine Klasse ist wie ein Bauplan für ein Haus (oder eine Plätzchen-Ausstechform). Der Bauplan selbst ist noch kein Haus, in dem man wohnen kann. Er beschreibt nur: Wie sieht ein Haus aus? Welche Eigenschaften hat es?
- Ein Objekt (auch Instanz genannt) ist das echte Haus, das nach diesem Bauplan gebaut wurde (oder das gebackene Plätzchen). Aus einem Bauplan kannst du beliebig viele verschiedene Häuser bauen!
[ KLASSE / BAUPLAN ]
class Haustier:
│
─────────┴─────────
│ │
[ OBJEKT 1 ] [ OBJEKT 2 ]
Bello, Hund, 3 Mimi, Katze, 5
🔍 Warum nicht einfach Dictionaries?
Bisher hättest du Tiere vielleicht so gespeichert:
tier1 = {"name": "Bello", "tierart": "Hund", "alter": 3}
tier2 = {"name": "Mimi", "art": "Katze", "alter": 5} # Ups! Hier heißt der Key "art" statt "tierart"!
Beim Dictionary kann man sich schnell bei Schlüsseln vertippen. Eine Klasse gibt uns eine feste Struktur vor.
💻 Wie sieht eine Klasse in Python aus?
Eine einfache Klasse definierst du mit dem Schlüsselwort class:
class Auto:
pass # 'pass' bedeutet: "Hier passiert erst mal nichts"
Aus dieser Klasse kannst du nun ein Objekt erzeugen (Instanziierung):
# Objekt erstellen:
mein_auto = Auto()
# Eigenschaften (Attribute) zuweisen mit dem Punkt (.):
mein_auto.farbe = "Rot"
mein_auto.marke = "VW"
mein_auto.ps = 110
print(mein_auto.farbe) # Gibt "Rot" aus
Du kannst ganz einfach ein zweites Auto bauen:
dein_auto = Auto()
dein_auto.farbe = "Blau"
dein_auto.marke = "BMW"
dein_auto.ps = 180
mein_auto und dein_auto sind zwei völlig eigenständige Objekte, die aus demselben Bauplan Auto entstanden sind!
🎯 Deine Aufgabe
Öffne jetzt die Datei aufgabe.py und bearbeite die Aufgaben:
- Erstelle die Klasse
Haustier. - Erzeuge zwei Haustier-Objekte
belloundmimimit Eigenschaften. - Schreibe zwei kleine Hilfsfunktionen, die mit deinen Haustier-Objekten arbeiten.
Testen:
Führe deine Tests aus mit:
python3 test_aufgabe.py
Sobald alle Tests bestanden sind, kannst du mit Kapitel 02 weitermachen!