Dieser Artikel bietet Ihnen eine einfache Erklärung von Klassen und Instanzen in der Python-Programmierung (mit Beispielen). Freunde in Not können darauf verweisen.
Objektorientierte Programmierung OOP: Objektorientierte Programmierung.
OOP betrachtet Objekte als Grundeinheit des Programms. Ein Objekt enthält Daten und Funktionen für Betriebsdaten. Python ist eine objektorientierte Programmiersprache, die Methodenaufrufe über Objekte implementiert.
Für objektorientierte Sprachen sind Klassen und Instanzen die wichtigen Konzepte. Eine Klasse ist eine abstrakte Vorlage und eine Instanz ist ein Objekt, das auf der Grundlage der Klassenvorlage erstellt wird.
In Python können alle Datentypen als Objekte betrachtet werden, und natürlich können Objekte auch angepasst werden. Benutzerdefinierte Objektdatentypen sind das Konzept von Klassen in objektorientierten Objekten, und Objekte werden basierend auf Klassen erstellt.
Die drei Hauptmerkmale sind: Kapselung, Vererbung und Polymorphismus.
Eine Klasse ist eine abstrakte Vorlage und eine Datenstruktur.
Syntax:
Klasse Klassenname: übergeben
Klasse Klassenname(Objekt): übergeben
Erklärung:
Klasse ist das Schlüsselwort Klasse. Der Klassenname class_name beginnt normalerweise mit einem Großbuchstaben.
Objekt gibt an, von welcher Klasse die Klasse erbt. Tatsächlich ist Objekt die Basisklasse, die alle Klassen erben, und wird im Allgemeinen nicht explizit ausgeschrieben. (Normalerweise schreibe ich es)
Wenn es beispielsweise viele Schüler in einer Klasse gibt, weist die Sammlung der Schüler viele Gemeinsamkeiten auf, wie z. B. den Namen des Schülers, die Schülernummer, die Note und das Hauptfach. , Noten und eine Reihe gemeinsamer Merkmale, dann können wir diese in eine Student-Klasse abstrahieren. Wie folgt:
class Student(object): pass
Im obigen Beispiel verwenden wir zunächst pass, um zu demonstrieren, was bedeutet, dass keine Operation ausgeführt wird.
Student-Instanzen können durch Klassen erstellt werden. Die Methode ist wie folgt:
>>> bart = Student() # 变量bart指向的是一个Student的实例 >>> bart <__main__.student> # 类object 实例的内存地址 >>> Student # 类 <class> # 返回的是Student 类的属性 class</class></__main__.student>
Für Instanzen von Klassen können Attribute sein gebunden.
Attribute sind die Daten- oder Funktionselemente eines Objekts. Zum Beispiel der Name des Studenten, die Studentennummer und andere Informationen in der Kategorie „Student“.
Zugriff über die „Methode zur Identifizierung von Festungsattributen“.
Python ist eine dynamische Sprache und auf Klassen basierende Instanzen können beliebig an Attribute gebunden werden. Die Möglichkeit, Eigenschaften an eine Instanz zu binden, erfolgt über Instanzvariablen oder über die Variable self.
>>> bart.name = 'xlp' # 动态给变量绑定属性 >>> bart.name 'xlp'
Wie werden Eigenschaften gebunden? __init__() Instanzmethode.
Wenn eine Instanz erstellt wird, prüft Python, ob die Methode __init__() implementiert ist. Wenn diese Methode nicht definiert ist, müssen Sie keine spezifischen Vorgänge auf die Methode anwenden. Das heißt, __init()__ wird automatisch aufgerufen, unabhängig davon, ob es standardmäßig oder angepasst ist.
__init__(self)
1. Der erste Parameter dieser Methode ist immer self, und self verweist auf die erstellte Instanz selbst.
2 Das Attribut ist an die Instanz gebunden, auf die „self“ zeigt. Die Methode „__init__()“ gibt „Keine“ zurück. Beim Erstellen einer Instanz können Sie keine leeren Parameter übergeben. Sie müssen Parameter übergeben, die der Methode entsprechen, aber self muss nicht übergeben werden. Die Standardparameter werden nach Bedarf übergeben.
Zum dritten Punkt: Da das Instanzobjekt nach dem Aufruf der automatisierten Erstellungsinstanz zurückgegeben wird, sollte der Konstruktor __init__(), wenn er definiert ist, keine Objekte zurückgeben, da sonst Konflikte auftreten können, sondern nur die Instanz zurückgeben. Der Versuch, ein anderes Objekt als „None“ zurückzugeben, löst einen TypeError aus:
Instanzattribute anzeigen: dir()über die integrierte Funktion dir (Klassenname) kann die Attribute der Klasse anzeigen, zum Beispiel: dir(Student1). Sie können auch auf die Eigenschaften der Instanz zugreifen. Versuchen Sie es auszudrucken und überzeugen Sie sich selbst~
Das obige ist der detaillierte Inhalt vonEine kurze Erklärung von Klassen und Instanzen in der objektorientierten Python-Programmierung (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!