Definire un forno a microonde avanzato
L'ereditarietà viene usata per propagare (cioè, copiare) funzionalità da una classe a un'altra. Per creare una classe figlia a partire da un'altra classe, usa l'argomento inherit in R6Class() (docs).
Lo schema per creare una classe figlia è:
child_class_factory <- R6Class(
"ChildClass",
inherit = parent_class_factory
)
Questo esercizio fa parte del corso
Programmazione orientata agli oggetti con S3 e R6 in R
Istruzioni dell'esercizio
Una classe per un forno a microonde è già stata definita nella variabile microwave_oven_factory.
- Crea una classe
FancyMicrowaveOvenche eredita daMicrowaveOven.- Chiama
R6Class()(docs). - L'argomento
classnamedeve essere"FancyMicrowaveOven". - L'argomento
inheritdeve esseremicrowave_oven_factory. - Assegna il risultato alla variabile
fancy_microwave_oven_factory. Per ora non aggiungere nessuna funzionalità extra.
- Chiama
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Explore the microwave oven class
microwave_oven_factory
# Define a fancy microwave class inheriting from microwave oven
fancy_microwave_oven_factory <- ___