Câu hỏi phỏng vấn C#
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...

middle

middle

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

middle

Có sự khác biệt giữa throwthrow ex không?

middle

Sự khác nhau giữa == và phương thức Equals trong C# là gì?

senior

Điều gì xảy ra khi chúng ta Box hoặc Unbox các kiểu Nullable trong C#?

Bình luận

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

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