Definiera en FancyMicrowaveOven
Arv används för att föra över—det vill säga kopiera—funktionalitet från en klass till en annan. För att skapa en barnklass från en annan klass använder du argumentet inherit i R6Class() (docs).
Mönstret för att skapa en barnklass är:
child_class_factory <- R6Class(
"ChildClass",
inherit = parent_class_factory
)
Den här övningen är en del av kursen
Objektorienterad programmering med S3 och R6 i R
Övningsinstruktioner
En klass för mikrovågsugnar har redan definierats i variabeln microwave_oven_factory.
- Skapa en klass
FancyMicrowaveOvensom ärver frånMicrowaveOven.- Anropa
R6Class()(docs). - Argumentet
classnameska vara"FancyMicrowaveOven". - Argumentet
inheritska varamicrowave_oven_factory. - Tilldela resultatet till variabeln
fancy_microwave_oven_factory. Lägg inte till någon extra funktionalitet ännu.
- Anropa
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Explore the microwave oven class
microwave_oven_factory
# Define a fancy microwave class inheriting from microwave oven
fancy_microwave_oven_factory <- ___