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

Sự khác biệt giữa overloadingoverriding trong C# là gì?

Câu trả lời

Trong C#, overloadingoverriding là hai khái niệm liên quan đến việc định nghĩa lại các phương thức trong lập trình hướng đối tượng, nhưng chúng có những đặc điểm và mục đích sử dụng khác nhau:

Overloading (Nạp chồng phương thức)

  • Định nghĩa: Overloading là việc tạo ra nhiều phiên bản của cùng một phương thức trong cùng một lớp hoặc giữa lớp cha và lớp con, với mỗi phiên bản có danh sách tham số khác nhau (khác về số lượng hoặc kiểu dữ liệu của tham số).
  • Mục đích: Mục đích của overloading là để cho phép một phương thức thực hiện các nhiệm vụ tương tự nhưng với các loại đầu vào khác nhau.
  • Cách hoạt động: Khi một phương thức được gọi, trình biên dịch C# sẽ xác định phiên bản phù hợp để gọi dựa trên các tham số được truyền vào.
  • Ví dụ:
public class Calculator {
    public int Add(int a, int b) {
        return a + b;
    }
    public int Add(int a, int b, int c) {
        return a + b + c;
    }
}

Trong ví dụ trên, phương thức Add được nạp chồng với hai phiên bản khác nhau dựa trên số lượng tham số.

Overriding (Ghi đè phương thức)

  • Định nghĩa: Overriding là việc một lớp con cung cấp một phiên bản cụ thể của một phương thức đã được định nghĩa trong lớp cha của nó.
  • Mục đích: Mục đích của overriding là để ch...
Bạn cần đăng nhập để xem
middle

middle

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

middle

Sự khác nhau giữa ""String.Empty trong C# là gì?

middle

Khái niệm Deep CopyShallow Copy trong C# là gì?

middle

Managed CodeUnmanaged Code trong 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