Specifying a Fancy Microwave Oven
Inheritance is used to propagate—that is, copy—functionality from one class to another. To create a child class from another class, use the inherit
argument to R6Class()
(docs).
The pattern to create a child class is:
child_class_factory <- R6Class(
"ChildClass",
inherit = parent_class_factory
)
Diese Übung ist Teil des Kurses
Object-Oriented Programming with S3 and R6 in R
Anleitung zur Übung
A microwave oven class has been defined for you in the variable microwave_oven_factory
.
- Create a
FancyMicrowaveOven
class that inherits fromMicrowaveOven
.- Call
R6Class()
(docs). - The
classname
argument should be"FancyMicrowaveOven"
. - The
inherit
argument should bemicrowave_oven_factory
. - Assign this to the variable
fancy_microwave_oven_factory
. Do not add any extra functionality yet.
- Call
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Explore the microwave oven class
microwave_oven_factory
# Define a fancy microwave class inheriting from microwave oven
fancy_microwave_oven_factory <- ___