Ein Programmierparadigma ist eine bestimmte Art, Programme zu schreiben und zu strukturieren.
Es beschreibt also den „Denkstil“ beim Programmieren.
| Paradigma | Idee |
|---|---|
| Prozedural | Programm besteht aus Anweisungen und Funktionen |
| Objektorientiert | Programm besteht aus Objekten und Klassen |
| Funktional | Arbeiten mit Funktionen und unveränderlichen Daten |
| Logisch | Regeln und Fakten bestimmen das Ergebnis |
Verschiedene Probleme lassen sich unterschiedlich gut lösen.
Ein Paradigma hilft dabei:
Java verwendet hauptsächlich das objektorientierte Paradigma.
Dabei arbeitet man mit:
Beispiel:
Auto meinAuto = new Auto();
Die objektorientierte Programmierung (ab hier abgekürzt mit OOP) ist
ein Programmierparadigme oder auch einfacher ausgedrückt
Programmierstil.
Aber was bedeutet Programmierstil? Es geht bei einme Programmierstil
darum, eine bestimmt Denkweise zu entwickeln, wenn man programmiert.
OOP ähnelt in vielen Dingen dem menschlichen Denken - daher kann OOP
sehr intuitiv angewendet werden.
Die objektorientierte Programmierung (OOP) ist ein
Programmierparadigma, bei dem Software aus Objekten aufgebaut
wird. Hier sind einige wichtige Konzepte der OOP:
1. Objekte: Alles in der OOP wird durch Objekte abgebildet. Ein
Objekt ist eine Instanz einer Klasse und enthält Daten
(Attribute) sowie Methoden (Funktionen), die auf diese Daten
zugreifen¹.
2. Klassen: Eine Klasse ist ein Bauplan für Objekte. Sie
definiert, welche Attribute und Methoden ein Objekt haben kann.
Zum Beispiel könnte eine Klasse "Hund" Attribute wie "Name" und "Alter"
sowie Methoden wie "Bellen" und "Laufen" haben.
3. Vererbung: Vererbung ermöglicht es, eine neue Klasse (die
abgeleitete Klasse) auf Basis einer vorhandenen Klasse (die
Basis-Klasse) zu erstellen. Die abgeleitete Klasse erbt die
Eigenschaften und Methoden der Basis-Klasse und kann sie erweitern oder
überschreiben.
Die OOP ist besonders gut geeignet für komplexe Programme, die
aktualisiert oder gewartet werden müssen. Sie basiert auf dem Konzept
von Objekten, die Daten und den zugehörigen Code enthalten.