Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Memanggil Satu Pembina daripada Yang Lain dalam C# untuk Memulakan Medan Baca Sahaja?
Penjalinan Pembina dalam C#: Penyelesaian untuk Permulaan Medan Baca Sahaja
Kadangkala, anda perlu memulakan medan readonly
menggunakan berbilang pembina. Memandangkan medan readonly
hanya boleh diberikan nilai dalam pembina, hanya menduplikasi logik permulaan merentas pembina adalah tidak cekap dan mudah ralat. C# menawarkan penyelesaian yang bersih: rantaian pembina.
Kuasa this
Penjalinan pembina memanfaatkan kata kunci this
untuk memanggil satu pembina daripada yang lain. Ini mengubah hala proses permulaan, menghapuskan kod berlebihan.
Ini contohnya:
<code class="language-csharp">public class Sample { public Sample(string theIntAsString) : this(int.Parse(theIntAsString)) { } public Sample(int theInt) => _intField = theInt; public int IntProperty => _intField; private readonly int _intField; }</code>
Kelas Sample
ini menunjukkan dua pembina. Pembina pertama mengambil rentetan, menghuraikannya menjadi integer, dan kemudian rantai kepada pembina kedua, melepasi integer yang dihuraikan. Pembina kedua secara langsung memulakan medan readonly
. Pendekatan ini memastikan logik pemulaan tetap terpusat sambil memberikan fleksibiliti dalam cara kelas dibuat seketika.
Menggunakan rantaian pembina menggalakkan kod yang lebih bersih dan lebih boleh diselenggara dengan mengelakkan logik pemulaan pendua, dengan itu meningkatkan kebolehgunaan semula kod dan mengurangkan risiko ketidakkonsistenan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memanggil Satu Pembina daripada Yang Lain dalam C# untuk Memulakan Medan Baca Sahaja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!