Rumah >pembangunan bahagian belakang >C++ >Bolehkah kaedah lanjutan ditambah ke kelas statik di C#?

Bolehkah kaedah lanjutan ditambah ke kelas statik di C#?

Barbara Streisand
Barbara Streisandasal
2025-01-28 08:01:09156semak imbas

Can Extension Methods Be Added to Static Classes in C#?

Bolehkah kaedah lanjutan ke kelas statik dalam kelas statik?

Kaedah pengembangan dalam C# adalah ciri yang kuat yang membolehkan menambah kaedah baru kepada jenis yang sedia ada tanpa perlu mengubah suai kod sumbernya. Walau bagaimanapun, persoalannya ialah sama ada ia boleh mengembangkan kelas statik seperti .

Cuba gunakan kaedah statik tempatan dari parameter "ini" untuk mengembangkan Console dan tambah kaedah

. Walau bagaimanapun, kaedah ini gagal menambah kaedah yang diperlukan.

Console Sebab kegagalan ini adalah ciri -ciri yang wujud dalam kaedah pengembangan. Mereka memerlukan pembolehubah contoh (nilai) objek untuk memainkan peranan. Sebaliknya, kelas statik menunjukkan keadaan global dan kekurangan data contoh. Oleh itu, ia tidak boleh digunakan untuk menggunakan kaedah pengembangan berasaskan contoh. Console Walau bagaimanapun, terdapat satu lagi penyelesaian: mewujudkan kelas pembungkusan statik di sekitar antara muka statik WriteBlueLine. Kaedah ini menghapuskan permintaan untuk lanjutan, kerana ia boleh ditambah terus ke kelas pembungkusan.

Contohnya, kelas yang dapat direalisasikan

, seperti yang ditunjukkan di bawah:

ConfigurationManager melalui kaedah panggilan , kod boleh mengelakkan mengulangi kesulitan

.

Atas ialah kandungan terperinci Bolehkah kaedah lanjutan ditambah ke kelas statik di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn