Xem thêm

Từ khoá Static trong Lập trình hướng đối tượng

Huy Erick
Giới thiệu Trong các bài học trước, chúng ta đã tìm hiểu về CÁC LOẠI PHẠM VI TRUY CẬP TRONG C# OOP. Hôm nay, chúng ta sẽ cùng khám phá về Từ khoá Static trong...

Giới thiệu

Trong các bài học trước, chúng ta đã tìm hiểu về CÁC LOẠI PHẠM VI TRUY CẬP TRONG C# OOP. Hôm nay, chúng ta sẽ cùng khám phá về Từ khoá Static trong lập trình hướng đối tượng C#.

Nội dung

Để hiểu rõ bài viết này, bạn nên có kiến thức cơ bản về các phần sau:

  • BIẾN và KIỂU DỮ LIỆU trong C#
  • TOÁN TỬ TRONG C#
  • CÂU ĐIỀU KIỆN TRONG C#
  • CẤU TRÚC CƠ BẢN CỦA VÒNG LẶP TRONG C#
  • CẤU TRÚC HÀM CƠ BẢN TRONG C#
  • MẢNG MỘT CHIỀU TRONG C#

Trong bài học này, chúng ta sẽ tìm hiểu về các vấn đề sau:

  • Đặc điểm của thành viên tĩnh
  • Biến tĩnh
  • Phương thức tĩnh
  • Lớp tĩnh
  • Phương thức khởi tạo tĩnh

Đặc điểm của thành viên tĩnh

Thông thường, các thuộc tính và phương thức chỉ có thể sử dụng sau khi khởi tạo đối tượng. Dữ liệu thuộc về mỗi đối tượng và được gọi thông qua tên của đối tượng.

Tuy nhiên, đôi khi người lập trình mong muốn một thuộc tính nào đó được sử dụng chung cho tất cả đối tượng (chỉ có một vùng nhớ duy nhất được cấp phát). Từ đó, khái niệm "thành viên tĩnh" ra đời.

Biến tĩnh

Cú pháp:

 static   = ;

Trong đó:

  • là các phạm vi đã được trình bày trong bài "CÁC LOẠI PHẠM VI TRUY CẬP TRONG C# OOP"
  • static là từ khoá để khai báo thành viên tĩnh
  • là kiểu dữ liệu của biến (đã được trình bày trong bài "KIỂU DỮ LIỆU TRONG C#")
  • là tên biến do người dùng đặt và tuân thủ quy tắc đặt tên biến (đã được trình bày trong bài "BIẾN TRONG C#")
  • là giá trị ban đầu của biến tĩnh này. Nếu không khai báo giá trị này, C# sẽ tự gán giá trị mặc định và đưa ra cảnh báo khi biên dịch chương trình.

Biến tĩnh là một biến được sử dụng chung cho tất cả các đối tượng thuộc lớp. Nó được khởi tạo một lần duy nhất ngay khi chương trình được biên dịch và huỷ khi kết thúc chương trình.

Phương thức tĩnh

Cú pháp:

 static   {     // nội dung phương thức }

Trong đó:

  • là các phạm vi đã được trình bày trong bài "CÁC LOẠI PHẠM VI TRUY CẬP TRONG C# OOP"
  • static là từ khoá để khai báo thành viên tĩnh
  • là kiểu trả về của phương thức (đã được trình bày trong bài "HÀM TRONG C#")
  • là tên phương thức do người dùng đặt và tuân thủ quy tắc đặt tên (đã được trình bày trong bài "BIẾN TRONG C#")

Phương thức tĩnh có hai mục đích chính:

  • Phương thức tĩnh là một phương thức dùng chung của lớp. Nó có thể được gọi thông qua tên lớp mà không cần khởi tạo bất kỳ đối tượng nào, giúp tránh lãng phí bộ nhớ.
  • Nó hỗ trợ việc viết các hàm tiện ích để sử dụng lại.

Lớp tĩnh

Cú pháp:

 static class  {     // các thành phần của lớp }

Trong đó:

  • là các phạm vi đã được trình bày trong bài "CÁC LOẠI PHẠM VI TRUY CẬP TRONG C# OOP"
  • static là từ khoá để khai báo thành viên tĩnh
  • class là từ khoá để khai báo lớp
  • là tên lớp do người dùng đặt và tuân thủ quy tắc đặt tên

Lớp tĩnh chỉ chứa các thành phần tĩnh (biến tĩnh, phương thức tĩnh) và không thể khai báo hoặc khởi tạo đối tượng thuộc lớp tĩnh.

Phương thức khởi tạo tĩnh

Cú pháp:

static () {     // nội dung của constructor }

Trong đó:

  • static là từ khoá để khai báo thành viên tĩnh
  • là tên của lớp chứa constructor này

Constructor tĩnh chỉ được gọi một lần duy nhất khi chương trình được nạp vào bộ nhớ để thực thi. Nó được sử dụng để thiết lập một số thông số trước khi có bất kỳ đối tượng nào được tạo ra. Constructor tĩnh cũng giống phương thức tĩnh, không thể gọi các thuộc tính không phải static.

Kết luận

Bài viết này giúp bạn hiểu được:

  • Đặc điểm của thành viên tĩnh.
  • Biến tĩnh.
  • Phương thức tĩnh.
  • Lớp tĩnh.
  • Phương thức khởi tạo tĩnh.

Bài tiếp theo, chúng ta sẽ tìm hiểu về KẾ THỪA TRONG LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG C#.

Cảm ơn bạn đã đọc bài viết. Hãy để lại bình luận hoặc góp ý để chúng tôi phát triển bài viết tốt hơn. Đừng quên "Luyện tập - Thử thách - Không ngại khó".

Thảo luận

Nếu bạn có bất kỳ khó khăn hoặc thắc mắc nào về khóa học, đừng ngần ngại đặt câu hỏi trong phần BÌNH LUẬN bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

1