8 Phương thức – Method

Trong C#, phương thức (method) là một nhóm các lệnh được tổ chức để thực hiện một tác vụ cụ thể. Việc sử dụng phương thức giúp tái sử dụng mã nguồn, tăng tính modular và dễ dàng bảo trì ứng dụng.

Khai báo phương thức

Để khai báo một phương thức trong C#, bạn sử dụng cú pháp sau:

[phạm_vi_truy_cập] [từ_khóa_tĩnh] kiểu_trả_về TênPhuongThuc([danh_sách_tham_số])
{
    // Nội dung phương thức
}
  • phạm_vi_truy_cập: Xác định mức độ truy cập của phương thức (public, private, protected, internal).
  • từ_khóa_tĩnh: Tùy chọn; sử dụng static nếu phương thức là tĩnh.
  • kiểu_trả_về: Kiểu dữ liệu mà phương thức trả về; sử dụng void nếu không trả về giá trị.
  • TênPhuongThuc: Tên của phương thức, nên đặt theo quy tắc PascalCase.
  • danh_sách_tham_số: Danh sách các tham số (nếu có), mỗi tham số bao gồm kiểu dữ liệu và tên biến, ngăn cách nhau bằng dấu phẩy.

Ví dụ: Khai báo một phương thức tính tổng hai số nguyên:

public int TinhTong(int soA, int soB)
{
    return soA + soB;
}

Gọi phương thức

Để gọi một phương thức, bạn sử dụng tên phương thức kèm theo danh sách tham số tương ứng:

int ketQua = TinhTong(5, 10);
Console.WriteLine("Kết quả: " + ketQua);

Nếu phương thức là tĩnh (static), bạn có thể gọi trực tiếp thông qua tên lớp:

int ketQua = TenLop.TinhTong(5, 10);

Nếu phương thức không phải là tĩnh, bạn cần tạo một đối tượng của lớp trước khi gọi:

TenLop doiTuong = new TenLop();
int ketQua = doiTuong.TinhTong(5, 10);

Tham số trong phương thức

Phương thức có thể nhận tham số để xử lý dữ liệu. Bạn có thể chỉ định giá trị mặc định cho tham số và truyền tham số theo tên:

Ví dụ: Phương thức với tham số có giá trị mặc định:

public void InThongDiep(string thongDiep = "Xin chào!")
{
    Console.WriteLine(thongDiep);
}

Gọi phương thức:

InThongDiep(); // In ra: Xin chào!
InThongDiep("Chào mừng bạn đến với C#!"); // In ra: Chào mừng bạn đến với C#!

Ví dụ: Truyền tham số theo tên:

public void HienThiThongTin(string ten, int tuoi)
{
    Console.WriteLine($"Tên: {ten}, Tuổi: {tuoi}");
}

Gọi phương thức:

HienThiThongTin(ten: "An", tuoi: 25);
HienThiThongTin(tuoi: 30, ten: "Bình");

Truyền tham số theo tham trị và tham chiếu

Mặc định, các tham số được truyền theo tham trị (giá trị được sao chép). Để truyền theo tham chiếu (tham số tham chiếu đến biến gốc), bạn sử dụng từ khóa ref hoặc out:

Ví dụ: Sử dụng ref:

public void TangGiaTri(ref int giaTri)
{
    giaTri += 1;
}

Gọi phương thức:

int so = 5;
TangGiaTri(ref so);
Console.WriteLine(so); // In ra: 6

Ví dụ: Sử dụng out:

public void KhoiTaoGiaTri(out int giaTri)
{
    giaTri = 10;
}

Gọi phương thức:

int so;
KhoiTaoGiaTri(out so);
Console.WriteLine(so); // In ra: 10

Phương thức đệ quy

Phương thức đệ quy là phương thức tự gọi chính nó để giải quyết một vấn đề bằng cách chia nhỏ thành các bài toán con. Cần cẩn trọng khi sử dụng để tránh vòng lặp vô hạn.

Ví dụ: Tính giai thừa của một số nguyên dương:

public int TinhGiaiThua(int n)
{
    if (n <= 1)
        return 1;
    else
        return n * TinhGiaiThua(n - 1);
}

Gọi phương thức:

int ketQua = TinhGiaiThua(5);
Console.WriteLine(ketQua); // In ra: 120

Việc hiểu và áp dụng đúng các phương thức trong C# giúp bạn xây dựng các chương trình hiệu quả, dễ bảo trì và mở rộng.

Để lại một bình luận 0

Your email address will not be published. Required fields are marked *