×

Các Thuộc Tính Và Phương Thức Tĩnh Trong C# Sử Dụng Và Ưu Điểm

Trong C#, các thuộc tính tĩnh (static properties) và phương thức tĩnh (static methods) là những thành phần của lớp mà không cần tạo đối tượng của lớp đó để truy cập vào chúng. Điều này cho phép bạn lưu trữ thông tin chung hoặc thực hiện các hành động mà không phụ thuộc vào việc tạo các phiên bản đối tượng cụ thể.

Các thuộc tính tĩnh (static properties):

  1. Khai báo và sử dụng:
    public class MyClass
    {
        public static int StaticProperty { get; set; } // Thuộc tính tĩnh
    
        public static string StaticString { get; } = "Static Text"; // Thuộc tính tĩnh chỉ đọc
    
        static MyClass()
        {
            StaticProperty = 100; // Khởi tạo giá trị trong hàm tạo tĩnh (optional)
        }
    }
    
  2. Truy cập từ bên ngoài:
    int value = MyClass.StaticProperty;
    string text = MyClass.StaticString;
    

Các phương thức tĩnh (static methods):

  1. Khai báo và sử dụng:
    public class MyClass
    {
        public static void StaticMethod()
        {
            // Thực hiện công việc của phương thức tĩnh
        }
    
        public static int CalculateSum(int a, int b)
        {
            return a + b;
        }
    }
    
  2. Gọi từ bên ngoài:
    MyClass.StaticMethod(); // Gọi phương thức tĩnh
    
    int sum = MyClass.CalculateSum(5, 10); // Gọi phương thức tĩnh với tham số
    

Đặc điểm của thuộc tính và phương thức tĩnh:

  • Không cần tạo đối tượng: Không cần tạo đối tượng của lớp để truy cập thuộc tính tĩnh hoặc gọi phương thức tĩnh.
  • Chia sẻ thông tin chung: Sử dụng để lưu trữ các giá trị hoặc thực hiện các hành động chung cho tất cả các đối tượng của lớp.
  • Khởi tạo tĩnh: Có thể khởi tạo các giá trị ban đầu cho thuộc tính tĩnh trong hàm tạo tĩnh của lớp (constructor static).

Ví dụ minh họa:

public class MathUtils
{
    public static double Pi { get; } = 3.14159;
    
    public static int Add(int a, int b)
    {
        return a + b;
    }

    public static double CircleArea(double radius)
    {
        return Pi * radius * radius;
    }
}

class Program
{
    static void Main()
    {
        double area = MathUtils.CircleArea(5.0);
        Console.WriteLine($"Area of the circle: {area}");

        int sum = MathUtils.Add(10, 20);
        Console.WriteLine($"Sum of numbers: {sum}");
    }
}

Trong ví dụ trên, Pi là một thuộc tính tĩnh lưu giá trị của số Pi, và Add cũng như CircleArea là các phương thức tĩnh cho phép tính tổng hai số và diện tích hình tròn mà không cần tạo đối tượng MathUtils.

Sử dụng các thuộc tính và phương thức tĩnh là cách tiện lợi và hiệu quả để làm việc với các dữ liệu và hành động không phụ thuộc vào các phiên bản đối tượng cụ thể trong C#.

Comments