Comece agoraComece grátis

Sobrescrevendo as capacidades de cozimento

Classes filhas também podem estender funcionalidades sobrescrevendo métodos. Elas fazem isso definindo métodos com o mesmo nome dos da classe pai.

Classes filhas podem acessar métodos públicos da classe pai prefixando o nome com super$.

Este exercicio faz parte do curso

Programação Orientada a Objetos com S3 e R6 em R

Ver curso

Instruções do exercicio

Um forno de micro-ondas foi pré-definido no seu workspace.

  • Atualize a definição da classe de micro-ondas sofisticado para incluir um elemento público.
  • Sobrescreva o método cook().
    • O método deve continuar recebendo o argumento time_seconds.
    • Ele deve passar o argumento time_seconds para o método cook() da classe pai…
    • e então exibir uma message() (docs) adicional dizendo "Enjoy your dinner!".
  • Instancie um objeto de micro-ondas sofisticado e atribua a a_fancy_microwave.
  • Chame o método cook() por um segundo.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# Explore microwave oven class
microwave_oven_factory

# Update the class definition
fancy_microwave_oven_factory <- R6Class(
  "FancyMicrowaveOven",
  inherit = microwave_oven_factory,
  # Add a public list with a cook method
  ___ = ___(
    ___ = ___
    
    
    
  )
)

# Instantiate a fancy microwave
a_fancy_microwave <- ___

# Call the cook() method
___
Editar e Executar Código