Mengakses Ahli Statik dalam C#: Mengelakkan Ralat Rujukan Contoh
Dalam C#, mengakses ahli statik memerlukan pemahaman kelakuan unik mereka. Tidak seperti ahli contoh, yang tergolong dalam objek tertentu, ahli statik tergolong dalam kelas itu sendiri. Percubaan untuk mengakses ahli statik menggunakan rujukan contoh mengakibatkan ralat: "Ahli '
Sintaks yang Betul untuk Akses Ahli Statik:
Cara yang betul untuk mengakses ahli statik adalah melalui nama kelas, bukan contoh kelas.
Mari kita ilustrasikan dengan contoh:
<code class="language-csharp">// Static class members namespace MyDataLayer.Section1 { public class MyClass { public class MyItem { public static string Property1 { get; set; } } } }</code>
Akses Salah (menggunakan rujukan contoh):
<code class="language-csharp">using MyDataLayer.Section1; public class MyClass { protected void MyMethod() { MyClass.MyItem oItem = new MyClass.MyItem(); someLiteral.Text = oItem.Property1; // Error! } }</code>
Akses Betul (menggunakan nama kelas):
<code class="language-csharp">using MyDataLayer.Section1; public class MyClass { protected void MyMethod() { someLiteral.Text = MyDataLayer.Section1.MyClass.MyItem.Property1; // Correct! } }</code>
Alternatif: Mengalih keluar static
Pengubah suai
Jika anda perlu mengakses ahli melalui contoh, alih keluar kata kunci static
daripada pengisytiharan ahli:
<code class="language-csharp">public class MyItem { public string Property1 { get; set; } // No longer static }</code>
Ini menjadikan Property1
ahli contoh, membenarkan akses menggunakan oItem.Property1
.
Dengan mengikuti garis panduan ini, anda boleh mengelakkan ralat biasa apabila bekerja dengan ahli statik dalam C# dan memastikan kod anda berfungsi dengan betul.
Atas ialah kandungan terperinci Mengapa saya tidak dapat mengakses ahli statik dalam C# menggunakan rujukan contoh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!