Làm thế nào để bạn sử dụng một phương pháp lớp tĩnh?

Trong C#, một lớp tĩnh là một lớp không thể khởi tạo. Mục đích chính của việc sử dụng các lớp tĩnh trong C# là cung cấp các bản thiết kế của các lớp kế thừa của nó. Các lớp tĩnh được tạo bằng từ khóa tĩnh trong C# và. BỌC LƯỚI. Một lớp tĩnh chỉ có thể chứa các thành viên tĩnh. Bạn không thể tạo đối tượng cho lớp tĩnh

Ưu điểm của các lớp tĩnh

  1. Nếu bạn khai báo bất kỳ thành viên nào là thành viên không tĩnh, bạn sẽ gặp lỗi.  
  2. Khi bạn cố gắng tạo một thể hiện cho lớp tĩnh, nó lại tạo ra lỗi thời gian biên dịch, bởi vì các thành viên tĩnh có thể được truy cập trực tiếp bằng tên lớp của nó
  3. Từ khóa tĩnh được sử dụng trước từ khóa lớp trong định nghĩa lớp để khai báo một lớp tĩnh
  4. Một thành viên lớp tĩnh được truy cập bởi tên lớp theo sau là tên thành viên.  

Cú pháp của lớp tĩnh

static class classname  
{  
   //static data members  
   //static methods  
} 

Bản trình diễn lớp tĩnh

namespace StaticConstructorsDemo  
{  
    class MyCollege  
    {  
        //static fields  
        public static string CollegeName;  
        public static string Address;  
  
        //static constructor  
        static MyCollege[]  
        {  
            CollegeName = "ABC College of Technology";  
            Address = "Hyderabad";  
        }  
    }  
    class Program  
    {  
        static void Main[string[] args]  
        {  
            Console.WriteLine[MyCollege.CollegeName];  
            Console.WriteLine[MyCollege.Address];  
            Console.Read[];  
        }  
    }  
}

Thành viên tĩnh

Có hai loại thành viên lớp tĩnh C#, tĩnh và không tĩnh

Thành viên không tĩnh

Đây là loại mặc định cho tất cả các thành viên. Nếu bạn không sử dụng từ khóa "tĩnh" để khai báo một trường/thuộc tính hoặc một phương thức thì có thể gọi là "Thành viên không tĩnh". Tính năng chính của thành viên không tĩnh là nó sẽ chỉ bị ràng buộc với đối tượng

Trường / Thuộc tính không tĩnh
Bộ nhớ được cấp phát khi đối tượng được tạo.

Phương thức không tĩnh
Các phương thức này có thể triển khai các thao tác trên các trường và thuộc tính không tĩnh

Thành viên tĩnh

Nếu bạn sử dụng từ khóa "tĩnh" để khai báo một trường/thuộc tính hoặc một phương thức, thì nó được gọi là "Thành viên tĩnh". Tính năng chính của thành viên không tĩnh là nó sẽ không bị ràng buộc với bất kỳ đối tượng nào. Nó có thể truy cập riêng lẻ với tên lớp. Nói cách khác, các thành viên tĩnh có thể truy cập trực tiếp mà không cần tạo một đối tượng.

Trường tĩnh / Thuộc tính
Bộ nhớ sẽ được cấp phát riêng lẻ, không có bất kỳ mối quan hệ nào với đối tượng.

Phương thức tĩnh
Các phương thức này chỉ có thể triển khai các thao tác trên các trường và thuộc tính tĩnh; .

 

Demo về thành viên tĩnh

using System;  
using System.Linq;  
using System.Text;  
using System.Collections.Generic;  
namespace StaticConstructorsDemo  
{  
    class Student  
    {  
        //non-statcic data members  
        public string StudentName;  
        public string Course;  
        public void SetStudentDetails[string StuName, string Cou]  
        {  
            StudentName = StuName;  
            Course = Cou;  
        }  
        public void DisplayStudentDetails[]  
        {  
            Console.WriteLine[StudentName + " - " + Course];  
        }  
  
        //static data members  
        public static string CollegeName = "ABC College of Technology";  
        public static string CollegeAddress = "Hyderabad";  
  
        //static methods  
        public static void DisplayCollegeDetails[]  
        {  
            Console.WriteLine[CollegeName];  
            Console.WriteLine[CollegeAddress];  
        }  
    }  
    class Program  
    {  
        static void Main[string[] args]  
        {  
            //access static members  
            Student.DisplayCollegeDetails[];  
  
            //acess non-static members  
            Console.WriteLine[];  
            Student s1= new Student[];  
            Student s2 = new Student[];  
            s1.SetStudentDetails["Sarath","MCA"];  
            s1.SetStudentDetails["Syam","MBA"];  
            s1.DisplayStudentDetails[];  
            s2.DisplayStudentDetails[];  
            Console.Read[];  
        }  
    }  
}

Trình xây dựng tĩnh

Hàm tạo tĩnh được sử dụng để khởi tạo các thành viên dữ liệu tĩnh, trong khi hàm tạo thông thường [hàm tạo không tĩnh] được sử dụng để khởi tạo các thành viên dữ liệu không tĩnh

Trong hướng dẫn lập trình C# này, chúng ta sẽ xem cách chúng ta có thể làm việc với các lớp và phương thức tĩnh trong C#. Chúng ta cũng sẽ xem xét một số ưu điểm và nhược điểm của việc sử dụng chúng trong. NET ứng dụng và phần mềm

Đọc. Cơ sở cho lập trình hướng đối tượng [OOP]

Lớp tĩnh là gì?

Lớp tĩnh trong C# là lớp không thể kế thừa hoặc khởi tạo và chỉ chứa các thành viên tĩnh. Loại lớp này chỉ có thể chứa các thành viên tĩnh bao gồm các trường, thuộc tính, phương thức, v.v.

Các lớp tĩnh được niêm phong, ngăn không cho chúng được mở rộng. Bạn có thể tận dụng các lớp tĩnh để lưu trữ tiện ích hoặc phương thức trợ giúp. Nếu bạn cần gọi một phương thức tĩnh từ một lớp khác, bạn có thể thực hiện bằng cách sử dụng tên lớp, theo sau là tên phương thức, như minh họa trong ví dụ cú pháp bên dưới

ClassName.MethodName[];

Ví dụ: nếu bạn có một lớp tĩnh có tên là Tiện ích với một phương thức tĩnh có tên là Thêm, bạn có thể gọi nó như thế này

Utilities.Add[5, 10];

Đây là một ví dụ đơn giản về cách tạo một lớp tĩnh trong C#

public static class Utilities 
{
  public static void DisplayMessage[string message]
 {
    Console.WriteLine[message];
  }
}

Như bạn có thể thấy, lớp Tiện ích chứa một phương thức tĩnh duy nhất có tên là DisplayMessage[]. Để gọi phương thức này, chúng ta chỉ cần sử dụng đoạn mã C# sau

Utilities.DisplayMessage["This is a test message..."];

Đọc. Công cụ C# cho chất lượng mã

Tại sao chúng ta cần một lớp tĩnh?

Một lớp tĩnh được sử dụng để nhóm các thành viên tĩnh có liên quan của một lớp. Các lớp tĩnh không thể được khởi tạo và do đó không có sẵn để sử dụng giống như một lớp thông thường. Mục đích chính của một lớp tĩnh là hạn chế việc tạo các thể hiện của một lớp và cải thiện khả năng đọc mã bằng cách nhóm các chức năng liên quan lại với nhau mà không cần phải liên kết với một đối tượng

Ví dụ: nếu bạn muốn tạo một tập hợp các phương thức trợ giúp để làm việc với ngày tháng, bạn có thể đặt tất cả các phương thức trợ giúp của mình vào một thư viện lớp độc lập và thêm thư viện làm tài liệu tham khảo khi cần trong dự án của bạn

Phương thức tĩnh là gì?

Một phương thức tĩnh là một phương thức được khai báo trong một lớp bằng cách chỉ định từ khóa tĩnh trong chữ ký của phương thức. Vì một phương thức tĩnh thuộc về một lớp chứ không phải một thể hiện của lớp, nên bạn không cần một thể hiện của một lớp để gọi các thành viên tĩnh của nó. Các phương thức tĩnh thường được sử dụng cho các hàm tiện ích hoặc hàm trợ giúp không cần hoạt động với bất kỳ thể hiện cụ thể nào của một lớp

Trong C#, các phương thức tĩnh được khai báo bằng từ khóa tĩnh. Ví dụ

public static void Main[] 
{ 
   Console.WriteLine["Hello, world!"]; 
}

Để gọi một phương thức tĩnh, bạn sử dụng tên lớp theo sau là tên phương thức như được hiển thị ở đây. Tên lớp. Tên phương thức []

Ví dụ: nếu bạn có một phương thức tĩnh có tên GetDbContext[] trong một lớp có tên DbHelper, bạn sẽ gọi nó như thế này. DbTrợ giúp. GetDbContext[]

Điều quan trọng cần nhớ là các phương thức tĩnh chỉ có thể truy cập các thành viên tĩnh khác trong lớp của chúng. Họ không thể truy cập các thành viên không tĩnh [biến thể hiện và phương thức] của lớp riêng của họ hoặc bất kỳ lớp nào khác

Một cách sử dụng phổ biến của các phương thức tĩnh là tạo các phương thức mở rộng. Các phương thức mở rộng cho phép bạn thêm các phương thức mới vào các kiểu hiện có mà không phải sửa đổi kiểu ban đầu

Những điểm cần nhớ về các phương thức tĩnh

Khi làm việc với các phương thức tĩnh trong C#, có một số điểm bạn cần lưu ý. Đầu tiên, các phương thức tĩnh chỉ có thể được gọi từ các thành viên tĩnh khác của cùng một lớp. Chúng không thể được gọi từ các phương thức thể hiện. Thứ hai, các phương thức tĩnh không thể truy cập các biến thể hiện. Họ chỉ có thể truy cập các biến tĩnh. Cuối cùng, các phương thức tĩnh không thể bị ghi đè

Đọc. Công cụ năng suất cho. nhà phát triển NET

Trình xây dựng tĩnh là gì?

Hàm tạo tĩnh là một loại hàm tạo đặc biệt dành cho loại chỉ chứa các thành viên tĩnh. Sự khác biệt quan trọng nhất giữa các hàm tạo tĩnh và thể hiện là các hàm tạo tĩnh không thể bị ghi đè, chúng cũng không có bất kỳ công cụ sửa đổi truy cập nào. Chúng cũng không có tham số, vì vậy bạn không thể sử dụng chúng để truyền vào bất kỳ giá trị nào khi khởi tạo đối tượng. Lưu ý rằng mặc dù bạn có thể có hàm tạo tĩnh cho một lớp nhưng bạn không thể có hàm hủy tĩnh

Hàm tạo tĩnh được sử dụng để khởi tạo bất kỳ dữ liệu tĩnh nào của lớp mà nó thuộc về hoặc để thực hiện một thao tác cụ thể chỉ phải thực hiện một lần. Các hàm tạo tĩnh sẽ chỉ được gọi một lần cho mỗi lớp trên mỗi hợp ngữ. Tuy nhiên, điều này tự động xảy ra khi bạn truy cập một thành viên tĩnh của lớp hoặc tạo phiên bản đầu tiên của lớp

Tại sao chúng ta cần các phương thức tĩnh?

Có một số lý do tại sao các nhà phát triển có thể muốn sử dụng các phương thức tĩnh trong mã C# của họ. Đầu tiên, các phương thức tĩnh có thể được sử dụng như các hàm tiện ích không yêu cầu một thể hiện của một lớp được gọi. Điều này có thể hữu ích khi bạn muốn thực hiện một số thao tác không nhất thiết cần truy cập vào bất kỳ dữ liệu hoặc trạng thái nào trong một lớp

Một ưu điểm khác của các phương thức tĩnh là chúng có thể được gọi mà không cần phải tạo một thể hiện của một lớp. Điều này có thể hữu ích khi bạn muốn thực hiện một số tác vụ khởi tạo một lần hoặc khi bạn muốn gọi một phương thức từ bên trong một phương thức khác mà không phải tạo một thể hiện của lớp chứa

Các lập trình viên có thể tận dụng các phương thức tĩnh để triển khai mẫu Singleton, đây là mẫu thiết kế đảm bảo rằng một lớp chỉ có một thể hiện

Những điểm cần nhớ về các phương thức tĩnh

Các phương thức tĩnh được liên kết với một lớp chứ không phải một thể hiện của nó. Do đó, bạn không cần một thể hiện để gọi một phương thức tĩnh. Bạn có thể tận dụng các phương thức tĩnh để thực hiện các tác vụ khởi tạo, chẳng hạn như khởi tạo kết nối cơ sở dữ liệu

Suy nghĩ cuối cùng về các lớp và phương thức tĩnh trong C#

Các lớp và phương thức tĩnh giúp viết mã có thể tái sử dụng. Tuy nhiên, bạn không thể dễ dàng thử nghiệm các phương thức tĩnh hoặc thậm chí kiểm tra đơn vị các phương thức tĩnh một cách dễ dàng. Để kiểm tra đơn vị các phương thức tĩnh, bạn có thể sử dụng các đại biểu. Các lớp tĩnh không thể được mở rộng từ bất kỳ lớp nào. Tuy nhiên, chúng mở rộng ngầm lớp Object

Làm cách nào để sử dụng phương thức tĩnh trong Java?

Nếu bạn áp dụng từ khóa tĩnh với bất kỳ phương thức nào, nó được gọi là phương thức tĩnh. .
Một phương thức tĩnh thuộc về lớp chứ không phải đối tượng của một lớp
Một phương thức tĩnh có thể được gọi mà không cần tạo một thể hiện của một lớp
Một phương thức tĩnh có thể truy cập thành viên dữ liệu tĩnh và có thể thay đổi giá trị của nó

Khi nào bạn nên sử dụng một phương thức tĩnh?

3. 2. Lý do hợp lệ để sử dụng các phương thức tĩnh là khi chúng ta sử dụng lại hành vi tiêu chuẩn trên các phiên bản của các lớp khác nhau. Vì các chức năng này không có trạng thái riêng và không bị ràng buộc với một phần cụ thể trong logic nghiệp vụ của chúng tôi, nên việc giữ chúng trong một mô-đun nơi chúng có thể được chia sẻ là điều hợp lý.

Phương thức lớp tĩnh là gì?

Một phương thức tĩnh trong Java là một phương thức là một phần của lớp chứ không phải là một thể hiện của lớp đó. Mọi thể hiện của một lớp đều có quyền truy cập vào phương thức. Các phương thức tĩnh có quyền truy cập vào các biến lớp [biến tĩnh] mà không cần sử dụng đối tượng của lớp [thể hiện]. Chỉ dữ liệu tĩnh có thể được truy cập bằng một phương thức tĩnh

Lớp tĩnh được sử dụng ở đâu?

Một lớp tĩnh có thể được sử dụng như một vùng chứa thuận tiện cho các tập hợp phương thức chỉ hoạt động trên các tham số đầu vào và không phải lấy hoặc đặt bất kỳ trường đối tượng bên trong nào. For example, in the . NET Class Library, the static System.

Chủ Đề