Ralat Akses Ahli Bukan Statik dalam Aplikasi Berorientasikan Objek C#
Dalam pengaturcaraan berorientasikan objek dengan C#, cuba mengakses bukan statik ahli, kaedah atau sifat dari dalam kaedah atau sifat yang diisytiharkan sebagai statik boleh mengakibatkan mesej ralat "Rujukan objek diperlukan untuk mengakses medan bukan statik, kaedah atau sifat ''...'"
Ralat ini biasanya berlaku apabila ahli khusus contoh (seperti kaedah atau sifat bukan statik) diakses daripada konteks statik, seperti kaedah statik atau harta dalam kelas yang sama.
Penyelesaian Kemungkinan:
Untuk menyelesaikan ralat ini, terdapat dua perkara utama pendekatan:
Contoh:
Dalam coretan kod yang disediakan, pengubahsuaian berikut akan betulkan ralat:
MainClass instance = new MainClass(); btn.Clicked += instance.StartClick; btn_stop.Clicked += instance.StopClick;
Ini mencipta contoh MainClass dan mengaitkan StartClick dan Kaedah StopClick kepada pengendali acara yang sepadan menggunakan rujukan contoh.
Memilih Pendekatan Terbaik:
Pendekatan yang sesuai bergantung pada keperluan khusus aplikasi. Jika ahli bukan statik boleh beroperasi tanpa memerlukan contoh objek, mengisytiharkannya sebagai statik adalah penyelesaian yang lebih bersih dan cekap. Walau bagaimanapun, jika ia memerlukan akses kepada data atau kefungsian khusus contoh, mencipta tika objek adalah perlu.
Memahami perbezaan antara ahli statik dan bukan statik adalah penting untuk mengelakkan ralat tersebut dan membangunkan berstruktur dan boleh diselenggara dengan baik aplikasi C# berorientasikan objek.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'Akses Ahli Bukan Statik' dalam Kod C# Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!