Python: Objektorientierte Programmierung [OOP]: ist ein Programmierparadigma (Modell), das Objekte und Klassen verwendet, um Software zu strukturieren eine Methode, die reale Entitäten und Beziehungen modelliert. Dies basiert auf der Idee, dass Objekte Daten und Code enthalten können, der diese Daten manipuliert.
Es gibt Schlüsselkonzepte, die Sie über objektorientierte Programmierung kennen müssen:
Das folgende Beispiel soll Ihnen helfen, auf die erläuterten Konzepte zu verweisen und Ihnen eine grafische Vorstellung davon zu geben, wie jedes Konzept innerhalb eines Objekts aussieht. Wenn Sie anfangen, OOP zu lernen, wird dies hilfreich sein Sie verstehen, was jedes Konzept bewirkt.
class Car: def __init__(self, make, model, year, color): self.__make = make self.model = model self.year = year self.color = color def drive(self): print(f"The {self.year} {self.__make} {self.model} is driving") # GETTER method for make def get_make(self): return self.__make # SETTER method for make def set_make(self, make): self.__make = make class ElectricCar(Car): def __init__(self, make, model, year, battery_size): super().__init__(make, model, year) self.battery_size = battery_size def drive(self): print(f"The {self.year} {self.make} {self.model} with a {self.battery_size}-kWh battery is driving silently.") my_car = Car("McLaren Automotive", "Artura Spider", 2024, "Red/Black") my_electric_car.drive()
Was ist eine Klasse:?
In Python ist eine Klasse: eine Blaupause zum Erstellen von Objekten. Es definiert eine Reihe von Attributen und Methoden, die die erstellten Objekte haben werden. Sie können beispielsweise schnell eine Klasse wie folgt definieren:
class Car:
Was ist ein Objekt?
In Python ist ein Objekt eine Instanz einer Klasse. Es wird mithilfe des Klassen-Blueprints erstellt und kann über eigene, eindeutige Daten verfügen. Sie können beispielsweise ein Objekt wie dieses erstellen:
my_car = Car("McLaren Automotive", "Artura Spider", 2024, "Red/Black") my_electric_car
Was sind Attribute?
In Python sind Attribute Variablen, die zu einer Klasse oder einem Objekt gehören. Sie repräsentieren den Zustand oder die Daten des Objekts. Ein Beispiel für ein Attribut sieht so aus:
self.color = color
Was sind Methoden?
In Python sind Methoden Funktionen, die zu einer Klasse gehören. Sie definieren Verhaltensweisen oder Aktionen, die die Objekte ausführen können. Ein Beispiel für eine Methode sieht so aus:
TIPP: Beim Definieren einer Methode können Sie pass hinzufügen; temporär, damit Python beim Ausführen der Datei keinen Fehler auslöst.
def drive(self): pass;
Was ist Vererbung?
In Python ist eine Vererbung ein Mechanismus, bei dem eine neue Klasse (untergeordnete Klasse) Attribute und Methoden von einer vorhandenen Klasse (übergeordnete Klasse) erbt. Ein Beispiel:
ElectricCar erbt von Car
class ElectricCar(Car):
Was ist Kapselung?
Kapselung in einer Bündelung von Daten (Attribut) und Methoden, die mit den Daten arbeiten, in einer einzigen Einheit (Klasse) und Einschränkung des Zugriffs auf einige Komponenten des Objekts. Darüber hinaus können Sie sie zu einer privaten Variablen machen, indem Sie ihr doppelte Unterstriche __ voranstellen. Darüber hinaus sollten Sie eine Getter- und eine Setter-Methode bereitstellen, um auf die private Variable zuzugreifen und sie zu ändern.
Sie können beispielsweise eine private Variable wie folgt festlegen:
self.__make = make
Und fügen Sie Setter und Getter hinzu, um auf die private Variable zuzugreifen und sie zu ändern
# Getter method for make def get_make(self): return self.__make # Setter method for make def set_make(self, make): self.__make = make
Getter-Methode: get_make-Methode wird hinzugefügt, um auf die private Variable __make zuzugreifen
Setter-Methode: Die set_make-Methode wird hinzugefügt, um die private Variable __makezu zu ändern
Dadurch wird das Make-Attribut gekapselt und sichergestellt, dass von außerhalb der Klasse nicht direkt darauf zugegriffen werden kann, wodurch eine bessere Kapselung und Kontrolle über das Attribut gewährleistet wird.
Das obige ist der detaillierte Inhalt vonPYTHON: OOP {Beginner's Edition}. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!