Abstraktná trieda je návrhom príbuzných tried. Nemôže byť vytvorená inštancia, ale je k nej prístup iba prostredníctvom dedičnosti. Na implementáciu svojich abstraktných metód je potrebná podtrieda, ktorá dedí abstraktnú triedu. V opačnom prípade kompilátor označí chybu.
Abstraktné metódy sú metódy bez implementácie. Abstraktná trieda môže mať abstraktné metódy alebo konkrétne (normálne) metódy.
Python priamo nepodporuje abstraktné metódy, ale môžete k nim získať prístup pomocou súboru abc (abstraktná základná trieda) modul.
Použitie modulu abc v Pythone
Na definovanie abstraktnej triedy v Pythone musíte import modul abc.
Pozrite sa na príklad nižšie:
z abc import ABC
trieda AbstractClassName (ABC):
prejsť
Všimnite si kľúčové slovo prejsť. Toto kľúčové slovo slúži na zastupovanie prázdneho kódu. Ak ho vynecháte, vyskytne sa chyba pri kompilácii.
Súvisiace: Bude Julia predkladať ponuky na Pythonov trón?
Definície tried, definície metód, slučky a keby príkazy očakávajú implementáciu kódu. Ak ich vynecháte, vyskytne sa chyba pri kompilácii. Aby ste tomu zabránili, použite
prejsť nahradiť prázdny kód.Na definovanie abstraktnej metódy v Pythone použite @abstraktna metoda maliar:
z abc import ABC, abstraktná metóda
trieda AbstractClassName (ABC):
@abstraktna metoda
def abstractMethod (self):
prejsť
Na tomto mieste by bolo dobré spomenúť, že - na rozdiel od Javy - abstraktné metódy v Pythone môžu mať implementáciu. K tejto implementácii je možné pristupovať v prevažujúcej metóde pomocou Super() metóda.
importovať abc
trieda AbstractClass (ABC):
def __init __ (vlastné, hodnota):
self.value = hodnota
super () .__ init __ ()
@abc.abstraktna metoda
def some_action (self):
print („Toto je nadradená implementácia.“)
trieda MySubclass (AbstractClassExample):
def some_action (self):
super (). some_action ()
print („Toto je implementácia podtriedy. ")
x = Moja podtrieda ()
x.some_action ()
Je zaujímavé poznamenať, že v abstraktnej triede môžete definovať konštruktor.
Na riadku 9 to môžete pozorovať @abc.abstraktna metoda sa používa ako dekorátor abstraktných metód. Toto je ďalší spôsob, ako to urobiť, než v predchádzajúcej forme. Všimnite si tiež, že riadok 1 je kratší (importovať abc) ako predchádzajúci import z riadku 1, ktorý ste použili.
Všetko je vecou voľby. Mnohým sa však môže zdať druhá metóda kratšia.
Spracovanie výnimiek v Pythone
Všimnite si, že vo vyššie uvedenom príklade kódu nie je možné zachytiť chyby. Chyby sa vyskytujú častejšie a ich spoľahlivý spôsob, ako ich získať, môže zmeniť hru.
Tieto udalosti, ktoré narúšajú bežný priebeh programu, sa nazývajú „výnimky“ a ich správa sa nazýva „spracovanie výnimiek“. Ďalej vo vašom zozname čítania v Pythone by malo byť spracovanie výnimiek.
Pokryte svoje kódovacie základne výnimkami z Pythonu.
Čítajte ďalej
- Programovanie
- Programovanie
- Python
- Programovacie jazyky
Jerome je spisovateľ štábu v MakeUseOf. Venuje sa článkom o programovaní a Linuxe. Je tiež nadšencom kryptomien a vždy má prehľad o kryptospracujúcom priemysle.
prihlásiť sa ku odberu noviniek
Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné elektronické knihy a exkluzívne ponuky!
Kliknutím sem sa prihlásite na odber