Ghi đè khả năng nấu ăn
Các lớp con cũng có thể mở rộng chức năng bằng cách ghi đè phương thức. Cách làm là định nghĩa một phương thức trùng tên với phương thức của lớp cha.
Các lớp con có thể truy cập các phương thức public từ lớp cha bằng cách thêm tiền tố super$ trước tên phương thức.
Bài tập này là một phần của khóa học
Lập trình hướng đối tượng với S3 và R6 trong R
Hướng dẫn bài tập
Một lò vi sóng đã được định nghĩa sẵn trong không gian làm việc của bạn.
- Cập nhật định nghĩa lớp lò vi sóng cao cấp để bao gồm một phần tử public.
- Ghi đè phương thức
cook().- Phương thức cook vẫn cần nhận đối số
time_seconds. - Truyền đối số
time_secondsvào phương thứccook()của lớp cha, … - rồi hiển thị thêm một
message()(docs) với nội dung"Enjoy your dinner!".
- Phương thức cook vẫn cần nhận đối số
- Khởi tạo một đối tượng lò vi sóng cao cấp và gán vào
a_fancy_microwave. - Gọi phương thức
cook()trong một giây.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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
___