Câu hỏi

Bạn có thể thêm các phương thức mở rộng vào một lớp static trong C# đã có không?

Câu trả lời

Trong C#, bạn có thể thêm các phương thức mở rộng (extension methods) vào một lớp, bao gồm cả các lớp static, nhưng với một số điều kiện cụ thể. Phương thức mở rộng cho phép bạn "mở rộng" chức năng của các lớp mà không cần sửa đổi mã nguồn của chúng, thậm chí là các lớp mà bạn không sở hữi mã nguồn (ví dụ như các lớp trong .NET Framework).

Tuy nhiên, cần lưu ý rằng phương thức mở rộng không thực sự thêm phương thức vào lớp mục tiêu. Thay vào đó, chúng là các phương thức static được gọi như thể chúng là phương thức của lớp mục tiêu, nhờ vào cú pháp đặc biệt của C#.

Điều kiện để tạo phương thức mở rộng:

  1. Phương thức mở rộng phải được định nghĩa trong một lớp static.
  2. Phương thức mở rộng phải là static.
  3. Tham số đầu tiên của phương thức mở rộng phải sử dụng từ khóa this theo sau là kiểu của lớp hoặc interface mà bạn muốn mở rộng.

Ví dụ:

G...

Bạn cần đăng nhập để xem
middle

middle

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

middle

Kể tên các loại lớp khác nhau trong C#?

middle

Sự khác nhau giữa static method, static constructor với methodconstructor thông thường trong C# là gì?

middle

Một phương thức có thể được overload theo những cách nào trong C#?

Bình luận

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

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