Dziedziczenie Pythona

| | | | | | | | | | | | | | | | | |

W świecie programowania obiektowego (OOP) dziedziczenie odnosi się do mechanizmu zdolności klasy do dziedziczenia lub rozszerzania właściwości innej klasy w czasie wykonywania. Ta właściwość umożliwia klasie pochodnej uzyskanie właściwości lub cech klasy bazowej.

Dziedziczenie w Pythonie jest uważane za jeden z najważniejszych aspektów OOP, ponieważ służy jako funkcja wielokrotnego użytku, która tworzy fragment kodu bardziej niezawodne.

inheritance flowchart



< / p>

Korzyści

  • Dziedziczenie opisuje relacje, które przypominają rzeczywiste scenariusze.
  • Zapewnia możliwość ponownego użycia, która pozwala użytkownikowi dodać dodatkową funkcjonalność do klasy pochodnej bez jej zmiany.
  • Jeżeli klasa Y dziedziczy po klasie X, to automatycznie wszystkie podklasy Y odziedziczą po klasie X.

Podstawowe terminy dziedziczenia

  1. Podklasa / klasa pochodna: jest to klasa, która dziedziczy właściwości z innej klasy (zwykle z klasy bazowej).
  2. Nadklasa / klasa podstawowa: jest to klasa, z której pochodzą inne podklasy.
  3. Klasa pochodna zwykle wywodzi / dziedziczy / rozszerza klasę bazową.

Składnia

 class SuperClassName: Treść klasy Super Class DerivedClass_Name (SuperClass): Treść pochodnej class 

Przykłady

Zagłębmy się w świat dziedziczenia Pythona z prostymi przykładami. Przeczytaj także o wielokrotnym dziedziczeniu .




Krok 1. Utwórz klasę bazową

 class Father: # Słowo kluczowe `self` jest używane do reprezentowania instancji klasy. # Używając słowa kluczowego "self" uzyskujemy dostęp do atrybutów i metod klasy w Pythonie. # Metoda "__init__" jest wywoływana jako konstruktor w terminologii obiektowej. # Ta metoda jest wywoływana, gdy obiekt jest tworzony z klasy. # pozwala klasie zainicjować atrybuty klasy. def __init __ (self, name, lastname): self.name = nazwa self.lastname = nazwisko def printname (self): print (self.name, self.lastname) # Użyj klasy Father, aby utworzyć obiekt, a następnie wykonać metoda printname: x = Ojciec („Anees”, „Mulani”) x.printname () 

Wyjście: Anees Mulani

Krok 2. Utwórz klasę pochodną

 # Funkcja podklasy __init __ () zastępuje dziedziczenie funkcji klasy bazowej __init __ (). class Syn (Ojciec): def __init __ (ja, imię, nazwisko): Ojciec .__ init __ (siebie, imię, nazwisko) x = Syn („Dev”, „Bajaj”) x.printname () 

Wniosek: Dev Bajaj

Korzystanie z funkcji super ()

Dzięki funkcji super () nie musisz używać rodzica nazwę elementu, automatycznie odziedziczy metody i właściwości od swojego rodzica.

 class Ojciec: def __init __ (self, name, lastname) : self.name = imię self.lastname = nazwisko def printname (self): print (self.name, self.lastname) class Syn (Father): def __init __ (self, name, lastname): super() .__ init __ (imię, nazwisko) x = Student ("Dev", "Bajaj") x.printname ()