Pişirme Yeteneklerini Geçersiz Kılma
Alt sınıflar, yöntemleri geçersiz kılarak (override ederek) işlevselliği genişletebilir. Bunu, üst sınıftakiyle aynı ada sahip yöntemler tanımlayarak yaparlar.
Alt sınıflar, adın başına super$ ekleyerek üst sınıflarındaki genel (public) yöntemlere erişebilir.
Bu egzersiz, kursun bir parçasıdır
R'de S3 ve R6 ile Nesne Yönelimli Programlama
Egzersiz talimatları
Bir mikrodalga fırın çalışma alanında önceden tanımlandı.
- Şık mikrodalga fırın sınıfının tanımını bir public öğe içerecek şekilde güncelle.
cook()yöntemini geçersiz kıl.cookyöntemi yine birtime_secondsargümanı almalı.time_secondsargümanını üst sınıfıncook()yöntemine geçirmeli, …- ardından
"Enjoy your dinner!"diyen ek birmessage()(docs) göstermeli.
- Bir şık mikrodalga fırın nesnesi oluştur ve
a_fancy_microwavedeğişkenine ata. cook()yöntemini bir saniye için çağır.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Explore microwave oven class
microwave_oven_factory
# Update the class definition
fancy_microwave_oven_factory <- R6Class(
"FancyMicrowaveOven",
inherit = microwave_oven_factory,
# Add a public list with a cook method
___ = ___(
___ = ___
)
)
# Instantiate a fancy microwave
a_fancy_microwave <- ___
# Call the cook() method
___