Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Khác biệt giữa Overriding và Shadowing trong C#

Khác biệt giữa overriding và shadowing:

  • Shadowing định nghĩa lại toàn bộ phương thức, overriding chỉ định nghĩa lại phần triển khai.
  • Overriding truy cập lớp cơ sở qua đối tượng lớp con gọi phương thức ghi đè. Shadowing không truy cập phương thức lớp con.
  • Shadowing = method hiding. Phương thức cha có sẵn cho con không dùng override. Con có phiên bản riêng.
  • Overriding: định nghĩa hành vi đặc thù cho kiểu lớp con, lớp con triển khai phương thức cha theo yêu cầu.