Začněte nyníZačněte zdarma

Víceúrovňová dědičnost

Máš za sebou jednoduchou i vícenásobnou dědičnost. V tomto cvičení si vyzkoušíš víceúrovňovou dědičnost a vytvoříš novou verzi třídy Smartphone.

Pro začátek jsou níže připraveny třídy Computer a Tablet. Důležité je, že Tablet dědí ze třídy Computer. Hodně zdaru!

class Computer:
  def __init__(self, brand):
    self.brand = brand

  def browse_internet(self):
    print(f"Using {self.brand}'s default internet browser.")

class Tablet(Computer):
  def __init__(self, brand, apps):
    Computer.__init__(self, brand)
    self.apps = apps

  def uninstall_app(self, app):
    if app in self.apps:
      self.apps.remove(app)

Toto cvičení je součástí kurzu

Intermediate Object-Oriented Programming in Python

Zobrazit kurz

Pokyny k cvičení

  • Definuj třídu Smartphone, která dědí z třídy Tablet, zavolej konstruktor rodičovské třídy a definuj atribut phone_number na úrovni instance.
  • Vytvoř metodu send_text, která odešle textovou zprávu message příjemci recipient z čísla phone_number daného Smartphone.
  • Vytvoř instanci třídy Smartphone s názvem personal_phone, zavolej její metodu .browse_internet(), odinstaluj aplikaci Weather a odešli zprávu Time for a new mission! Chuckovi formou textové zprávy.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Create a Smartphone class that inherits from Tablet
class ____(____):
  def __init__(self, brand, apps, phone_number):
    ____.____(self, ____, ____)
    self.phone_number = ____
  
  # Create send_text to send a message to a recipient
  def ____(self, message, recipient):
    print(f"Sending {____} to {____} from {____.____}")

# Create an instance of Smartphone, call methods in each class
____ = Smartphone("Macrosung", ["Weather", "Camera"], "801-932-7629")    
personal_phone.____()
personal_phone.____("____")
personal_phone.____("____", "Chuck")
Upravit a spustit kód