Skip to content

3.1 Objektorientiertes Programmieren

Patrick edited this page Nov 18, 2024 · 9 revisions

Objektorientierte Programmierung (OOP) ist ein Programmierparadigma, das auf den Konzepten von "Objekten" und "Klassen" basiert. Diese Konzepte ermöglichen es, Software modularer, wartbarer und wiederverwendbarer zu gestalten.

class Auto: 
	# alle Klasse (außer Subklasse) benötigt __init__
	def __init__(self, marke, modell): 
		self.marke = marke 
		self.modell = modell 
		
	def beschreiben(self): # self müss im jeden Methode übergeben werden
		print(f"Dies ist ein {self.marke} {self.modell}.") 
		
mein_auto = Auto("Tesla", "Model S") 
mein_auto.beschreiben() 

Dies ist ein Tesla Model S.

Subklassen

class ElektroAuto(Auto):
		# initialisieren Sie Subklasse Eigenschaften wie batterie_kapazitaet
		def __init__(self, marke, modell, batterie_kapazitaet):
			super().__init__(marke, modell)  
			self.batterie_kapazitaet = batterie_kapazitaet 
		# Subklasse Methode
		def beschreiben(self): 
			super().beschreiben() # beschreiben() Methode von Auto Klasse
			print(f"Batteriekapazität von {self.batterie_kapazitaet} kWh.") 
			
mein_elektro_auto = ElektroAuto("Tesla", "Model 3", 75) mein_elektro_auto.beschreiben()

Dies ist ein Tesla Model 3.

Batteriekapazität von 75 kWh.

Was ist super()? In Python ist super() eine eingebaute Funktion, die ein temporäres Objekt der Oberklasse zurückgibt und es Ihnen ermöglicht, deren Methoden aufzurufen.

1. Aufgabe

Was ist die Ausgabe?

class Base:
	def greet(self):
		print("Hallo von der Basisklasse")

class Derived(Base):
	def greet(self):
		super().greet()
		print("Hallo von der abgeleiteten Klasse")

d = Derived()
d.greet()
Lösung

Hallo von der Basisklasse

Hallo von der abgeleiteten Klasse

Derived hat Base.greet() auch per super().greet(). Deswegen sieht man zwei Begrüßungen.

1 Set-Up

Mach dich bereit!

1.1 Python Installation

1.2 Befehlszeilenschnittstelle

1.2.1 PowerShell

1.2.2 Python pip

1.3 Code-Editor

1.4 Versionskontrolle

1.4.1 Git

1.4.2 GitHub

1.4.3 Obsidian

2 Grundlegend

Los geht's!

2.1 Rechner und Speicher

2.1.2 Datentypen

2.2 Kontrollfluss

2.3 Funktionen

2.3.4 Decorators

3 Fortgeschritten

Wie ein Profi!

3.2 Module

4 Wichtige Bibliotheken

Bibliothekskarte beantragen!

4.1 NumPy

4.2 pandas

5 Präsentationen

Letzte Strecke!

Clone this wiki locally