1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Objektově orientované programování s S3 a R6 v R

Connected

Cvičení

Odhalení rodiče

Ve výchozím nastavení mají třídy R6 přístup pouze k funkcionalitě svého přímého rodiče. Aby byl přístup možný přes více generací, musí mezilehlé třídy definovat aktivní vazbu (active binding), která rodiče zpřístupní. Vypadá to takto:

active = list(
  super_ = function() super
)

Pokyny

100 XP

Ve tvém pracovním prostoru je předem definovaná třída mikrovlnné trouby.

  • Rozšiř třídu fancy mikrovlnné trouby přidáním prvku active do seznamu.
  • Přidej aktivní vazbu, která zpřístupní funkcionalitu jejího rodiče.
    • Vazba by se měla jmenovat super_.
    • Měla by to být funkce bez argumentů, která jednoduše vrátí super.
  • Vytvoř instanci fancy mikrovlnky a přiřaď ji do proměnné a_fancy_microwave.
  • Zavolej vazbu super_ na fancy mikrovlnce.