[Python von Grund auf lernen] 47. Vererbungskonzept und grundlegende Verwendung in der objektorientierten Programmierung

Grundlegende Verwendung der Vererbung

Im wirklichen Leben bezieht sich der Begriff „Erbschaft“ im Allgemeinen darauf, dass Kinder das Eigentum ihrer Eltern erben, und Kinder können das Eigentum ihrer Eltern direkt nutzen.

Vererbung in Programmen

Vererbung ist ein Konzept im objektorientierten Softwaredesign und zusammen mit Polymorphismus und Kapselung die drei Grundmerkmale der Objektorientierung. Durch Vererbung können Unterklassen die Eigenschaften und Methoden der übergeordneten Klasse erhalten oder Eigenschaften und Methoden neu definieren und hinzufügen usw.

Fügen Sie hier eine Bildbeschreibung ein

  • In einem Programm beschreibt Vererbung die Eigentumsbeziehung zwischen mehreren Klassen.
  • Wenn die Attribute und Methoden in einer Klasse A wiederverwendet werden können, können sie durch Vererbung an Klasse B übergeben werden.
  • Dann ist Klasse A die Basisklasse, auch Elternklasse genannt; Klasse B ist die abgeleitete Klasse, auch Unterklasse genannt.
class Animal:
    def __int__(self):
        pass

    """动物类"""
    def sleep(self):
        print('正在睡觉')


class Dog(Animal):
    """Dog类继承自Animal类"""
    def __init__(self):
        pass


class Cat(Animal): 
    """Cat类继承自Animal类"""
    def __int__(self):
        pass

# Dog 和 Cat 都继承自Animal类,可以直接使用Animal类里的sleep方法
dog = Dog()
dog.sleep()

cat = Cat()
cat.sleep()
  • Es wird eine Basisklasse definiert Animal, die eine Methode enthält, sleepum auszugeben, dass das Tier schläft.
  • DogSowohl die Klasse als auch Catdie Klasse erben von der Basisklasse Animal. Die Vererbung wird realisiert, indem der Klassenname der übergeordneten Klasse bei der Definition der Klasse in Klammern gesetzt wird.
  • Die instanziierten Objekte von Dogclass und class sind Catbzw. .dogcat
  • Rufen Sie dog.sleep()die cat.sleep()Methoden „and“ auf, da diese beiden Methoden von der übergeordneten Klasse stammen Animal, sodass die Unterklasse diese Methoden auch direkt verwenden kann.
  • Die laufenden Ergebnisse geben nacheinander „sleeping“ aus, was darauf hinweist, dogdass catbeide und schlafen.

Der Code wird Zeile für Zeile erklärt:

class Animal:
    def __int__(self):
        pass

    """动物类"""
    def sleep(self):
        print('正在睡觉')
  • AnimalEs wird eine Basisklasse mit dem Namen definiert , die eine sleepMethode enthält, um auszugeben, dass das Tier schläft.
class Dog(Animal):
    """Dog类继承自Animal类"""
    def __init__(self):
        pass
  • definiert eine Dogabgeleitete Klasse mit dem Namen, die von der Basisklasse erbt Animal. Die Vererbungsbeziehung wird dadurch erreicht, dass der Klassenname der übergeordneten Klasse in Klammern gesetzt wird.
class Cat(Animal): 
    """Cat类继承自Animal类"""
    def __int__(self):
        pass
  • definiert eine Catabgeleitete Klasse mit dem Namen, die auch von der Basisklasse erbt Animal.
# Dog 和 Cat 都继承自Animal类,可以直接使用Animal类里的sleep方法
dog = Dog()
dog.sleep()

cat = Cat()
cat.sleep()
  • DogEin Objekt der Klasse wird erstellt dogund seine sleep()Methode wird aufgerufen. Da Dogdie Klasse von der Klasse erbt , kann die in der Klasse definierte Methode Animaldirekt verwendet werden .Animalsleep()
  • CatEin Objekt der Klasse wird erstellt catund seine Methode wird aufgerufen . Die Methode in der Klasse sleep()kann auch direkt wiederverwendet werden .Animalsleep()

Fortgeschrittener Fall

[Python] Python erkennt das Wort-Ratespiel – fordern Sie Ihre Intelligenz und Ihr Glück heraus!

[Python] Die Python-tkinter-Bibliothek implementiert ein GUI-Programm für den Gewichtseinheitenkonverter

[Python] Verwenden Sie Selenium, um (2023 Blog Star)-Einträge zu erhalten

[Python] Verwenden Sie Selenium und Chrome WebDriver, um Artikelinformationen im [Tencent Cloud Studio Practical Training Camp] zu erhalten.

Verwenden Sie Tencent Cloud Cloud Studio, um die Planung von Baidu AI zur Realisierung der Texterkennung zu realisieren

[Spaß mit der Python-Serie [Xiaobai muss gesehen werden] Python-Multithread-Crawler: Laden Sie Bilder von Emoticon-Paket-Websites herunter

[Play with Python-Serie] [Muss für Xiaobai gesehen werden] Verwenden Sie Python, um historische Daten von Shuangseqiu zu crawlen und visuell zu analysieren

[Mit der Python-Serie spielen] [Muss für Xiaobai gesehen werden] Verwenden Sie die Python-Crawler-Technologie, um Proxy-IP abzurufen und in einer Datei zu speichern

[Muss für Xiaobai gesehen werden] Beispiel für die Python-Bildsynthese unter Verwendung der PIL-Bibliothek, um die Synthese mehrerer Bilder nach Rängen und Spalten zu realisieren

[Xiaobai muss sehen] Der tatsächliche Kampf des Python-Crawlers lädt Bilder von Göttinnen stapelweise herunter und speichert sie lokal

[Xiaobai muss sehen] Detaillierte Analyse und Codeimplementierung des Python-Wortwolkengenerators

[Xiaobai muss sehen] Python crawlt ein Beispiel für NBA-Spielerdaten

[Muss für Xiaobai gesehen werden] Beispielcode zum Crawlen und Speichern von Himalaya-Audio mit Python

[Muss für Xiaobai gesehen werden] Technische Umsetzung der Verwendung von Python zum stapelweisen Herunterladen von League of Legends-Skin-Bildern

[Xiaobai muss sehen] Python-Crawler-Datenverarbeitung und -visualisierung

[Muss für Xiaobai gesehen werden] Python-Crawler-Programm zum einfachen Erhalten von Helden-Skin-Bildern von King of Glory

[Muss für Xiaobai gesehen werden] Verwenden Sie Python, um ein personalisiertes Listen-Word-Dokument zu erstellen

[Muss für Xiaobai gesehen werden] Python-Crawler-Kampf: Holen Sie sich Bilder von der Onmyoji-Website und speichern Sie sie automatisch

Die unverzichtbare Serie des Bibliotheksverwaltungssystems von Xiaobai – Beispielcode für Anmelde- und Registrierungsfunktionen

100 Fälle von Xiaobais tatsächlichem Kampf: Ein vollständiges und einfaches Shuangseqiu-Lotterie-Gewinnbeurteilungsprogramm, geeignet für den Einstieg in Xiaobai

Geodatenverarbeitung und Visualisierung mit Geopandas und Shapely (.shp)

Verwenden Sie Selen, um die Daten der Maoyan-Filmliste zu crawlen

Ausführliche Erläuterung des Prinzips und der Implementierung des Bildverbesserungsalgorithmus Retinex

Leitfaden zum Einstieg in Crawler (8): Schreiben Sie Crawler-Programme für Wetterdaten zur visuellen Analyse

Einführungsleitfaden für Crawler (7): Verwendung von Selenium und BeautifulSoup zum Crawlen von Douban Movie Top250 Beispielerklärung [Reptile Xiaobai muss sich ansehen]

Leitfaden zum Einstieg in Crawler (6): Anti-Crawler und fortgeschrittene Fähigkeiten: IP-Proxy, User-Agent-Verkleidung, Cookie-Bypass-Anmeldeüberprüfung und Tools zur Identifizierung von Bestätigungscodes

Einführungsleitfaden zu Crawlern (5): Verteilte Crawler und Parallelitätskontrolle [Implementierungsmethoden zur Verbesserung der Crawling-Effizienz und Anforderungsrationalitätskontrolle]

Erste Schritte mit Crawlern (4): Der beste Weg, dynamische Webseiten mit Selenium und API zu crawlen

Leitfaden zum Einstieg in Crawler (3): Python-Netzwerkanfragen und gängige Anti-Crawler-Strategien

Erste Schritte mit Crawlern (2): Verwendung regulärer Ausdrücke zur Datenextraktion und -verarbeitung

Erste Schritte mit Reptilien (1): Lernen Sie die Grundlagen und Fähigkeiten von Reptilien

Anwendung des Deep-Learning-Modells in der Bilderkennung: CIFAR-10-Datensatzpraxis und Genauigkeitsanalyse

Grundlagen der objektorientierten Python-Programmierung und Beispielcode

Anleitung zum Betrieb einer MySQL-Datenbank: Erfahren Sie, wie Sie mit Python Vorgänge hinzufügen, löschen, ändern und abfragen

Anleitung zum Betrieb von Python-Dateien: Kodierung, Lesen, Schreiben und Ausnahmebehandlung

Verwenden Sie Python und Selenium, um das Crawlen zu automatisieren

Python-Multithread- und Multiprozess-Tutorial: umfassende Analyse, Codefälle und Optimierungsfähigkeiten

Selenium Automation Toolset – Vollständiger Leitfaden und Tutorials

Von den Grundlagen des Python-Webcrawlers bis hin zum eigentlichen Kampf-Tutorial

Python-Einführungs-Tutorial: Beherrschen Sie die Grundkenntnisse der For-Schleife, der While-Schleife, der String-Operation, des Lesens und Schreibens von Dateien sowie der Ausnahmebehandlung

Tutorial zur Pandas-Datenverarbeitung und -Analyse: von den Grundlagen bis zum tatsächlichen Kampf

Detaillierte Erläuterung häufig verwendeter Datentypen und zugehöriger Vorgänge in Python

[Neueste Version im Jahr 2023] Detaillierte Erläuterung von sechs wichtigen Maßnahmen zur Verbesserung des Index des Klassifizierungsmodells

Einführende Grundlagen und fortgeschrittene Kenntnisse der Python-Programmierung, Webentwicklung, Datenanalyse sowie maschinelles Lernen und künstliche Intelligenz

Diagrammvorhersageergebnisse mit 4 Regressionsmethoden: Vektorregression, Random Forest-Regression, lineare Regression, K-Nearest Neighbors-Regression

Ich denke du magst

Origin blog.csdn.net/qq_33681891/article/details/132357224
Empfohlen
Rangfolge