1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Hướng Đối Tượng Trong C# part 6 docx

2 399 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Các Trường Chỉ Đọc Trong C#
Trường học University of Information Technology
Chuyên ngành Computer Science
Thể loại Tài liệu
Năm xuất bản 2023
Thành phố Ho Chi Minh City
Định dạng
Số trang 2
Dung lượng 124,77 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các trường chỉ đọc Readonly fields: Hằng là một biến mà chứa một giá trị không thay đổi.. Trong một số trường hợp, bạn có một số biến không bị thay đổi nhưng giá trị của nó chỉ được khở

Trang 1

Các trường chỉ đọc( Readonly fields):

Hằng là một biến mà chứa một giá trị không thay đổi Trong C# khái niệm hằng cũng giống như mọi ngôn ngữ khác Tuy nhiên, hằng thì không cần thiết dùng trong mọi trường hợp Trong một số trường hợp, bạn có một số biến không bị thay đổi nhưng giá trị của nó chỉ được khởi tạo khi chương trình thực thi C# hỗ trợ một kiểu biến khác có lợi hơn trong trường hợp này là: các trường chỉ đọc

Từ khoá readonly thì linh động hơn từ khoá const Bởi vì bạn có thể khởi tạo giá trị cho

một trường chỉ đọc trong constructor Và nó cho phép một trường chỉ đọc là một thể

hiện(instance) hay một trường static có các giá trị khác nhau trong mỗi thể hiện của lớp

đó Nếu bạn muốn một trường chỉ đọc là static thì bạn phải khai báo tường minh

Ví dụ: chúng ta có một chương trình chỉnh sửa tài liệu, và chúng ta muốn hạn chế số tài liệu được sửa đồng thời Nhưng bởi vì ta bán phần mềm đó và người sử dụng có thể nâng cấp bản của họ Chúng ta không thể cố định số lượng lớn nhất trong mã nguồn Chúng ta cần một trường để mô tả giá trị lớn nhất này Trường này chỉ được đọc tại mỗi lúc

chương trình được ném ra:

public class DocumentEditor

{

public static readonly uint MaxDocuments;

static DocumentEditor()

{

// code here will read in the value of the max no of documents

// for the sake of argument, let's assume the result is 20

MaxDocuments = 20;

}

Trong ví dụ trên thì giá trị lớn nhất chỉ được cần được lưu trữ khi một thể hiện của

chương trình thực thi Và đó là lý do tại sao nó được khởi tạo trong một constructor tĩnh Tình huống khác, nếu mọi tài liệu chúng ta chỉnh sửa có một ngày được tạo ra và chúng

ta không muốn người sử dụng chỉnh sửa nó Kiểu ngày thì được mô tả trong lớp

system.Datetime

Trang 2

public class Document

{

public readonly DateTime CreationDate;

public Document()

{

// read in creation date from file Assume result is 1 Jan 2002

// but in general this can be different for different instances

// of the class

CreationDate = new DateTime(2002, 1, 1);

}

}

Từ hai ví dụ trên ta thấy CreationDate and MaxDocuments là các trường chỉ đọc và nó

không thể được gán giá trị bên ngoài constructor

 

Ngày đăng: 15/12/2013, 02:15

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w