ComeçarComece de graça

Herança em múltiplos níveis

Você já colocou a mão na massa com herança simples e múltipla. Neste exercício, você vai implementar herança em múltiplos níveis criando uma nova versão da classe Smartphone.

Para ajudar você a começar, as classes Computer e Tablet já estão definidas abaixo. É importante notar que Tablet herda da classe Computer. Boa sorte!

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)

Este exercício faz parte do curso

Programação Orientada a Objetos Intermediária em Python

Ver curso

Instruções do exercício

  • Defina uma classe Smartphone que herde de Tablet, chame o construtor da classe pai e defina o atributo de instância phone_number.
  • Crie um método send_text que envie uma message por texto para um recipient a partir do phone_number do Smartphone.
  • Instancie um objeto Smartphone chamado personal_phone e chame seu método .browse_internet(); desinstale o app Weather e envie a mensagem Time for a new mission! para Chuck por SMS.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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")
Editar e executar o código