- Khi nào nên
implement
hoặcextend
được sử dụng? - Một số ví dụ trong thế giới thực là gì?
Điều này có chính xác?
Việc triển khai dường như là một cách để thực thi rằng một số phương thức nhất định tồn tại trong một lớp và rằng các lời gọi hàm của phương thức này được định dạng đúng. Thực hiện không phải là một cách để truyền các biến hoặc "cài đặt" cho lớp?
Kịch bản thực tế mong đợi: Tôi có một nền tảng thương mại điện tử có nhiều lớp thanh toán đều tuân theo cùng một thiết kế. Khi một lớp thanh toán mới được thêm vào, thực sự dễ dàng tuân theo thiết kế đã xác định của lớp interface
để đảm bảo rằng tất cả các bit và mảnh đều ở đó, ngay từ đầu.
Việc mở rộng các lớp làm cho lớp mở rộng (con?) Kế thừa mọi thứ từ lớp cha của nó ngoại trừ các phương thức & biến được khai báo là private
?
Kịch bản thực tế mong đợi: Tôi có một lớp được gọi sessions
với hai lớp con được đặt tên sessioncookies
và databasesessions
. sessioncookies
và databasesessions
cùng nhau kế thừa một số tùy chọn cấu hình lẫn nhau từ các phiên mẹ của chúng, giúp dễ dàng thay đổi tùy chọn cấu hình để ảnh hưởng đến tất cả các loại lưu trữ dữ liệu khách truy cập cuối cùng.