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

Sự khác biệt giữa late binding ...

Câu trả lời

Trong C#, late binding và early binding là hai cách thức mà trình biên dịch và runtime xử lý việc liên kết đến các thành phần như phương thức, thuộc tính, và sự kiện. Dưới đây là sự khác biệt chính giữa late binding và early binding:

Early Binding

  • Định nghĩa: Early binding, còn được gọi là static binding, xảy ra khi liên kết đến một thành phần được thực hiện tại thời điểm biên dịch. Trình biên dịch C# xác định chính xác phương thức, thuộc tính, hoặc sự kiện nào sẽ được gọi dựa trên kiểu dữ liệu được khai báo.
  • Hiệu suất: Early binding thường cung cấp hiệu suất tốt hơn vì trình biên dịch đã xác định rõ ràng các thành phần cần liên kết và không cần phải xác định chúng tại thời điểm chạy.
  • Kiểm tra kiểu: Early binding cho phép trình biên dịch kiểm tra kiểu và đảm bảo rằng các phương thức và thuộc tính được sử dụng một cách chính xác, giúp giảm thiểu lỗi tại thời điểm chạy.
  • Ví dụ: Khi bạn gọi một phương thức từ một đối tượng có kiểu dữ liệu cụ thể, trình biên dịch sẽ liên kết đến phương thức đó tại thời điểm biên dịch.
csharp Copy
MyClass obj = new MyClass();
obj.MyMethod(); // Early binding

Late Binding

  • Định nghĩa: Late binding, còn được gọi là dynamic binding, xảy ra khi liên kết đến một thành phần được ...
senior

senior

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

middle

Có cách nào để bắt nhiều exception cùng một lúc và không phải duplicate code trong C# không?

middle

Biểu thức lambda trong C# là gì?

middle

Phạm vi của biến thành viên protected internal trong một lớp C# là gì?

Bình luận

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

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