Zacznij terazZacznij za darmo

Definiowanie klasy FancyMicrowaveOven

Dziedziczenie pozwala przenosić – czyli kopiować – funkcjonalność z jednej klasy do drugiej. Aby utworzyć klasę podrzędną na podstawie innej klasy, użyj argumentu inherit w funkcji R6Class() (dokumentacja).

Schemat tworzenia klasy podrzędnej wygląda następująco:

child_class_factory <- R6Class(
  "ChildClass",
  inherit = parent_class_factory
)

To ćwiczenie jest częścią kursu

Programowanie obiektowe z S3 i R6 w R

Zobacz kurs

Instrukcje do ćwiczenia

W zmiennej microwave_oven_factory zdefiniowano już klasę kuchenki mikrofalowej.

  • Utwórz klasę FancyMicrowaveOven, która dziedziczy po klasie MicrowaveOven.
    • Wywołaj funkcję R6Class() (dokumentacja).
    • Argument classname powinien mieć wartość "FancyMicrowaveOven".
    • Argument inherit powinien wskazywać na microwave_oven_factory.
    • Przypisz wynik do zmiennej fancy_microwave_oven_factory. Na razie nie dodawaj żadnej dodatkowej funkcjonalności.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Explore the microwave oven class
microwave_oven_factory

# Define a fancy microwave class inheriting from microwave oven
fancy_microwave_oven_factory <- ___
Edytuj i uruchom kod