Câu hỏi phỏng vấn C#
Câu hỏi

Sự khác nhau giữa abstract classinterface trong C# là gì?

Câu trả lời

Trong C#, abstract classinterface đều là cơ chế để định nghĩa các hợp đồng cho các lớp khác thực thi, nhưng chúng có một số sự khác biệt quan trọng:

Abstract Class

  • Định nghĩa: Một abstract class là một lớp không thể được khởi tạo trực tiếp. Nó thường chứa một hoặc nhiều phương thức trừu tượng (không có thân) cùng với các phương thức và trường dữ liệu đã được định nghĩa.
  • Kế thừa: Một lớp con chỉ có thể kế thừa từ một abstract class duy nhất (đơn kế thừa). Lớp con kế thừa abstract class phải cung cấp triển khai cho tất cả các phương thức trừu tượng của nó.
  • Chức năng: Abstract class có thể chứa cả dữ liệu (trường dữ liệu) và hành vi (phương thức) cụ thể hoặc trừu tượng.
  • Sử dụng khi: Bạn muốn chia sẻ mã giữa một số lớp con có liên quan chặt chẽ.

Interface

  • Định nghĩa: Một interface chỉ định một "hợp đồng" mà các lớp khác có thể thực thi. Nó chỉ chứa các định nghĩa của phương thức, thuộc tính, sự kiện, không ...
Bạn cần đăng nhập để xem
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Phương thức MemberwiseClone() trong C# dùng để làm gì?

middle

Công dụng của hàm tạo static trong C# là gì?

middle

Lợi ích của Deferred Execution trong LINQ là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào