One novel feature of C# is that it is also possible to write a static  dịch - One novel feature of C# is that it is also possible to write a static  Việt làm thế nào để nói

One novel feature of C# is that it

One novel feature of C# is that it is also possible to write a static no-parameter constructor for a class. Such
a constructor is executed only once, unlike the constructors written so far, which are instance constructors
that are executed whenever an object of that class is created:
class MyClass
{
static MyClass()
{
// initialization code
}
// rest of class definition
}
One reason for writing a static constructor is if your class has some static fields or properties that need to be
initialized from an external source before the class is first used.
The .NET runtime makes no guarantees about when a static constructor will be executed, so you should
not place any code in it that relies on it being executed at a particular time (for example, when an assembly
is loaded). Nor is it possible to predict in what order static constructors of different classes will execute.
However, what is guaranteed is that the static constructor will run at most once, and that it will be
invoked before your code makes any reference to the class. In C#, the static constructor is usually executed
immediately before the first call, to any member of the class.
Note that the static constructor does not have any access modifiers. It’s never called by any other C# code,
but always by the .NET runtime when the class is loaded, so any access modifier such as publicor private
would be meaningless. For this same reason, the static constructor can never take any parameters, and there
can be only one static constructor for a class. It should also be obvious that a static constructor can access
only static members, not instance members, of the class.
It is possible to have a static constructor and a zero-parameter instance constructor defined in the same
class. Although the parameter lists are identical, there is no conflict because the static constructor is
executed when the class is loaded, but the instance constructor is executed whenever an instance is created.
Therefore, there is no confusion about which constructor is executed or when.
If you have more than one class that has a static constructor, the static constructor that will be executed
fi rst is undefined. Therefore, you should not put any code in a static constructor that depends on other static
constructors having been or not having been executed. However, if any static fields have been given default
values, these will be allocated before the static constructor is called.
The next example illustrates the use of a static constructor. It is based on the idea of a program that has user
preferences (which are presumably stored in some configuration file). To keep things simple, assume just
one user preference, a quantity called BackColorthat might represent the background color to be used in
an application. Because we don’t want to get into the details of writing code to read data from an external
source here, assume also that the preference is to have a background color of red on weekdays and green on
weekends. All the program does is display the preference in a console window, but that is enough to see a
static constructor at work
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
một tính năng mới của c # là nó cũng có thể viết một hàm tạo không có tham số tĩnh cho một lớp học. như vậy
một nhà xây dựng được thực hiện một lần duy nhất, không giống như các nhà xây dựng bằng văn bản cho đến nay, đó là xây dựng dụ
được thực hiện bất cứ khi nào một đối tượng của lớp đó được tạo ra:
lớp myclass
{
myclass tĩnh ()

đang {/ / khởi tạo

} / / phần còn lại của định nghĩa lớp

}một lý do để viết một constructor tĩnh là nếu lớp của bạn có một số lĩnh vực tĩnh hay tài sản cần phải được
khởi tạo từ một nguồn bên ngoài trước khi lớp học được sử dụng đầu tiên.
thời gian chạy net. không đảm bảo về khi một constructor tĩnh sẽ được thực hiện không, vì vậy bạn nên
đặt bất kỳ mã trong nó mà dựa trên đó được thực hiện tại một thời điểm cụ thể (ví dụ, khi một hội đồng
là nạp). cũng không phải là có thể dự đoán những gì để xây dựng tĩnh của các lớp khác nhau sẽ thực hiện.
Tuy nhiên, những gì được bảo đảm là các nhà xây dựng tĩnh sẽ chạy cùng một lúc nhất, và nó sẽ được
gọi trước khi mã của bạn làm cho bất kỳ tham chiếu đến lớp. trong c #, các nhà xây dựng tĩnh thường được thực hiện ngay lập tức
trước khi cuộc gọi đầu tiên, cho bất kỳ thành viên của lớp.
lưu ý rằng các nhà xây dựng tĩnh không có bất kỳ bổ truy cập. nó không bao giờ được gọi bằng bất kỳ khác c # mã,
nhưng luôn luôn được thời gian chạy net. khi lớp được nạp, vì vậy bất kỳ sửa đổi lần truy cập như publicor
tin sẽ là vô nghĩa. cho lý do này, các nhà xây dựng tĩnh không bao giờ có thể lấy bất kỳ thông số, và có
có thể là chỉ có một constructor tĩnh cho một lớp học.nó cũng nên được rõ ràng rằng một constructor tĩnh có thể truy cập
chỉ có các thành viên tĩnh, không thành viên dụ, của lớp.
có thể có một constructor tĩnh và một constructor dụ không tham số được định nghĩa trong lớp
cùng. mặc dù danh sách tham số giống hệt nhau, không có xung đột bởi vì các nhà xây dựng tĩnh là
thực hiện khi các lớp được nạp,nhưng các nhà xây dựng dụ được thực hiện bất cứ khi nào một thể hiện được tạo ra.
Do đó, không có sự nhầm lẫn về mà xây dựng được thực hiện hoặc khi.
Nếu bạn có nhiều hơn một lớp có một constructor tĩnh, các nhà xây dựng tĩnh sẽ được thực hiện
fi tiên là không xác định. do đó, bạn không nên đặt bất kỳ mã trong một constructor tĩnh mà phụ thuộc vào tĩnh khác
nhà xây dựng đã được hay không đã được thực hiện. Tuy nhiên, nếu bất kỳ lĩnh vực tĩnh đã được đưa ra các giá trị
mặc định, chúng sẽ được phân bổ trước khi các nhà xây dựng tĩnh được gọi.
ví dụ tiếp theo minh họa việc sử dụng một constructor tĩnh. nó được dựa trên ý tưởng về một chương trình có sở thích người dùng
(mà có lẽ được lưu trữ trong một số tập tin cấu hình). để giữ cho mọi thứ đơn giản,giả chỉ
một sở thích người dùng, một đại lượng gọi là backcolorthat có thể đại diện cho màu nền được sử dụng trong một ứng dụng
. bởi vì chúng tôi không muốn đi vào chi tiết của việc viết code để đọc dữ liệu từ một nguồn bên ngoài
đây, giả sử cũng là sở thích là phải có một màu nền của màu đỏ trên các ngày trong tuần và màu xanh lá cây vào cuối tuần
.tất cả các chương trình không là hiển thị ưu tiên trong một cửa sổ giao diện điều khiển, nhưng đó là đủ để thấy một
constructor tĩnh tại nơi làm việc
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
Một tính năng tiểu thuyết của C# là nó cũng có thể viết một tĩnh không có tham số nhà xây dựng cho một lớp học. Như vậy
một nhà xây dựng được thực hiện chỉ một lần, không giống như các nhà thầu viết như vậy đến nay, đó là trường hợp nhà thầu
mà được thực hiện bất cứ khi nào một đối tượng của lớp đó được tạo ra:
lớp MyClass
{
tĩnh MyClass()
{
/ / khởi tạo mã
}
/ / phần còn lại của lớp học định nghĩa
}
Một lý do để viết một nhà xây dựng tĩnh là nếu lớp học của bạn có một số lĩnh vực tĩnh hoặc thuộc tính cần phải
khởi tạo từ một nguồn bên ngoài trước khi các lớp học đầu tiên được sử dụng.
The net runtime làm cho không có bảo đảm về khi một nhà xây dựng tĩnh sẽ được thực hiện, do đó bạn nên
không đặt bất kỳ mã trong đó phụ thuộc vào nó được thực hiện tại một thời điểm cụ thể (ví dụ:, khi một hội đồng
được nạp). Cũng không phải là nó có thể để dự đoán theo thứ tự các nhà thầu tĩnh của các lớp khác nhau sẽ thực hiện.
Tuy nhiên, những gì đảm bảo là rằng các nhà xây dựng tĩnh sẽ chạy tối đa một lần, và rằng nó sẽ
gọi trước khi mã của bạn làm cho bất kỳ tham chiếu đến lớp. Trong C#, các nhà xây dựng tĩnh được thực hiện thường
ngay lập tức trước khi cuộc gọi đầu tiên, cho bất kỳ thành viên của các lớp học.
Lưu ý rằng các nhà xây dựng tĩnh không có bất kỳ công cụ sửa đổi quyền truy cập. Nó không bao giờ được gọi là bởi bất kỳ mã C# khác,
nhưng luôn luôn bằng thời gian chạy net khi các lớp học được tải, vì vậy bất kỳ truy cập công cụ sửa đổi như publicor riêng
sẽ là vô nghĩa. Đối với lý do này, các nhà xây dựng tĩnh có thể không bao giờ mất bất kỳ tham số nào, và có
có thể là chỉ có một nhà xây dựng tĩnh cho một lớp học. Nó cũng phải được rõ ràng rằng một nhà xây dựng tĩnh có thể truy cập
chỉ có thành viên tĩnh, không ví dụ thành viên, của lớp học
nó có thể có một nhà xây dựng tĩnh và một nhà xây dựng trường hợp tham số zero được xác định trong cùng một
lớp. Mặc dù danh sách tham số là giống hệt nhau, có là không có xung đột bởi vì các nhà xây dựng tĩnh là
thực hiện khi các lớp học được tải, nhưng các nhà xây dựng trường hợp được thực hiện bất cứ khi nào một thể hiện được tạo ra.
Vì vậy, có là không có sự nhầm lẫn về nhà xây dựng được thực hiện hoặc khi.
nếu bạn có nhiều hơn một lớp mà có một nhà xây dựng tĩnh, các nhà xây dựng tĩnh sẽ được thực thi
fi rst là không xác định. Vì vậy, bạn nên không đặt bất kỳ mã trong một nhà xây dựng tĩnh mà phụ thuộc vào khác tĩnh
nhà thầu đã hoặc không có được thực hiện. Tuy nhiên, nếu bất kỳ lĩnh vực tĩnh đã được mặc định
giá trị, chúng sẽ được phân bổ trước khi các nhà xây dựng tĩnh được gọi là.
ví dụ sau minh hoạ việc sử dụng của một nhà xây dựng tĩnh. Nó được dựa trên ý tưởng của một chương trình có người sử dụng
sở thích (mà có lẽ là được lưu trữ trong một số tập tin cấu hình). Để giữ cho mọi thứ đơn giản, giả sử chỉ
ưu tiên một người sử dụng, một số lượng được gọi là BackColorthat có thể đại diện cho màu nền được sử dụng trong
ứng dụng. Bởi vì chúng tôi không muốn nhận được vào các chi tiết của văn bản mã để đọc dữ liệu từ thiết bị ngoài
nguồn ở đây, giả sử cũng là sở thích là để có một nền màu đỏ trên ngày trong tuần và màu xanh lá cây trên
cuối tuần. Tất cả các chương trình không là hiển thị các ưu đãi trong một cửa sổ giao diện điều khiển, nhưng đó là đủ để thấy một
nhà xây dựng tĩnh tại nơi làm việc
đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2024 I Love Translation. All reserved.

E-mail: