Rumah > pembangunan bahagian belakang > C++ > Mengapa saya tidak dapat mengakses ahli statik dalam C# menggunakan rujukan contoh?

Mengapa saya tidak dapat mengakses ahli statik dalam C# menggunakan rujukan contoh?

Mary-Kate Olsen
Lepaskan: 2025-01-27 15:11:11
asal
967 orang telah melayarinya

Why Can't I Access Static Members in C# Using Instance References?

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 '' tidak boleh diakses dengan rujukan tika."

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan