EmpezarEmpieza gratis

Ampliar las capacidades de cocción

La clase hija puede ampliar la funcionalidad de la clase padre añadiendo más métodos públicos con nombres distintos a los disponibles en la clase padre.

Los métodos públicos pueden llamar a otros métodos públicos anteponiendo su nombre con self$.

Este ejercicio forma parte del curso

Programación orientada a objetos con S3 y R6 en R

Ver curso

Instrucciones del ejercicio

Ya tienes un microondas predefinido en tu espacio de trabajo.

  • Amplía la definición de la clase de microondas elegante para incluir un elemento public.
  • Añade un método público cook_baked_potato().
    • No debe recibir argumentos.
    • En el cuerpo, debe llamar a su propio método cook() durante 3 segundos.
  • Crea un objeto FancyMicrowaveOven y asígnalo a a_fancy_microwave.
  • Llama al método cook_baked_potato() de a_fancy_microwave.

Aviso: No intentes comer patatas asadas tras haberlas cocinado durante 3 segundos: sabrán fatal y podrías sufrir una intoxicación alimentaria.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Explore microwave oven class
microwave_oven_factory

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

# Instantiate a fancy microwave
a_fancy_microwave <- ___

# Call the cook_baked_potato() method
___
Editar y ejecutar código