‹ Informatik

Klasse

Klasse verständlich erklärt: Bedeutung, Beispiele und Anwendung in Programmierung, Objektorientierung und Softwareprojekten.

Wenn du in einem Spiel mehrere Figuren hast, sollen sie oft ähnliche Dinge können: einen Namen haben, sich bewegen oder Punkte sammeln. Du willst diese Regeln nicht für jede Figur neu programmieren. Genau dabei helfen Klassen.

Deine Lernziele
  • Du erklärst den Unterschied zwischen Klasse und Objekt.
  • Du erkennst Attribute und Methoden.
  • Du erzeugst Objekte in Python.
  • Du verstehst die Grundidee der Vererbung.

Ein Bauplan für ähnliche Dinge

In der Programmierung fasst man oft ähnliche Dinge zusammen: mehrere Schüler, Lampen oder Spielfiguren. Eine Klasse ist ein Bauplan im Programm. Sie beschreibt, welche Daten und Aktionen Dinge einer bestimmten Sorte haben können.

Ein Objekt ist ein einzelnes Ding, das nach diesem Bauplan erzeugt wurde. Es heißt auch Instanz. Aus einer Klasse können viele verschiedene Objekte entstehen.

Beispiel

Die Klasse Hund ist der Bauplan.

bello und luna sind zwei Objekte dieser Klasse. Beide sind Hunde, aber sie können unterschiedliche Namen und Alter haben.

Merke

Klasse = Bauplan. Objekt = ein konkretes Exemplar, das nach diesem Bauplan entstanden ist.

Interaktive Quizfrage wird geladen ...

Eigenschaften: Attribute

Ein Hund kann einen Namen, ein Alter und eine Farbe haben. Solche gespeicherten Angaben heißen Attribute. Ein Attribut ist eine Eigenschaft eines Objekts mit einem Wert.

Die Klasse legt fest, welche Attribute vorgesehen sind. Jedes Objekt besitzt aber seine eigenen Werte. Deshalb kann Bello vier Jahre alt sein und Luna zwei Jahre, obwohl beide zur Klasse Hund gehören.

Beispiel

Bei einem Objekt bello könnte gelten:

  • bello.name ist Bello
  • bello.alter ist 4

Bei einem Objekt luna könnte gelten:

  • luna.name ist Luna
  • luna.alter ist 2

Interaktiver Lückentext wird geladen ...

Interaktive Quizfrage wird geladen ...

Aktionen: Methoden

Ein Hund kann bellen oder fressen. In einem Programm heißen Aktionen eines Objekts Methoden. Eine Methode ist eine Funktion, die zu einer Klasse gehört und etwas mit einem Objekt macht.

In Python steht bei Methoden meist self als erster Parameter. Ein Parameter ist eine Angabe, mit der eine Methode arbeiten kann. self meint dabei genau das Objekt, auf dem die Methode gerade arbeitet.

Methoden können Werte verändern oder ein Ergebnis liefern. Zum Beispiel könnte eine Methode den Punktestand erhöhen oder prüfen, ob eine Tür geöffnet ist.

Beispiel

In Python kann eine Klasse so aussehen:

class Hund:
    def bellen(self):
        print("Wuff")

Die Methode bellen gehört zur Klasse Hund. Ein erzeugter Hund kann sie aufrufen.

Merke

Attribute sagen, was ein Objekt hat. Methoden sagen, was es tun kann.

Interaktive Quizfrage wird geladen ...

Objekte in Python erzeugen

Damit aus dem Bauplan ein nutzbares Objekt wird, erzeugst du es mit dem Namen der Klasse und runden Klammern. Die besondere Methode __init__ heißt Konstruktor. Ein Konstruktor wird beim Erzeugen eines Objekts ausgeführt und setzt oft die ersten Attributwerte.

Beispiel
class Schueler:
    def __init__(self, name, klasse):
        self.name = name
        self.klasse = klasse

mia = Schueler("Mia", "8b")
tom = Schueler("Tom", "8b")

Schueler ist die Klasse. mia und tom sind Objekte. Beide haben eigene Werte für name und klasse.

Merke

Mit Klassenname(...) erzeugst du in Python ein Objekt. Die Angaben in den Klammern erhält der Konstruktor.

Interaktive Quizfrage wird geladen ...

Vererbung: Gemeinsamkeiten weitergeben

Manche Klassen sind besonders allgemein. Eine Basisklasse ist eine allgemeine Klasse. Eine Unterklasse ist eine speziellere Klasse, die Eigenschaften und Methoden der Basisklasse übernehmen kann. Dieses Weitergeben heißt Vererbung.

So musst du gemeinsame Regeln nicht doppelt schreiben. Eine Unterklasse darf zusätzlich eigene Attribute und Methoden haben.

Beispiel
class Fahrzeug:
    def fahren(self):
        print("Das Fahrzeug fährt")

class Fahrrad(Fahrzeug):
    def klingeln(self):
        print("Klingeling")

Fahrzeug ist die Basisklasse. Fahrrad ist eine Unterklasse. Ein Fahrrad kann fahren, weil es diese Methode übernimmt. Es kann außerdem klingeln.

Merke

Vererbung bedeutet: Eine speziellere Klasse übernimmt passende Eigenschaften und Methoden von einer allgemeineren Klasse.

Interaktive Quizfrage wird geladen ...

Zusammenfassung

Eine Klasse ist ein Bauplan für ähnliche Dinge im Programm. Ein Objekt ist ein einzelnes Exemplar dieses Bauplans. Attribute speichern Eigenschaften, und Methoden beschreiben Aktionen.

Mit einem Konstruktor erhalten neue Objekte ihre Startwerte. Durch Vererbung kann eine Unterklasse gemeinsame Regeln von einer Basisklasse übernehmen und sinnvoll ergänzen.

Interaktive Lernkarten wird geladen ...