Rumah > pembangunan bahagian belakang > C++ > Apa yang membezakan kaedah statik dari kaedah contoh dalam C#?

Apa yang membezakan kaedah statik dari kaedah contoh dalam C#?

Linda Hamilton
Lepaskan: 2025-01-26 23:16:10
asal
630 orang telah melayarinya

What distinguishes static methods from instance methods in C#?

Konsep kaedah statik dalam C#

Dalam C#, menambah kata kunci "statik" sebelum kaedah menunjukkan bahawa ia adalah kaedah statik, yang mempunyai ciri unik berbanding kaedah (contoh) biasa.

Memahami kaedah statik

Kaedah statik tidak dikaitkan dengan sebarang contoh khusus kelas. Sebaliknya, mereka dipanggil menggunakan nama kelas dan tidak memerlukan instantiasi. Seperti yang ditunjukkan di bawah:

<code class="language-c#">public static void DoSomething()
{
    // ...
}</code>
Salin selepas log masuk

Untuk memanggil kaedah statik ini, hanya gunakan nama kelas diikuti dengan nama kaedah:

<code class="language-c#">SomeClass.DoSomething();</code>
Salin selepas log masuk

Kelas statik

Menariknya, C# juga membenarkan anda mentakrifkan kelas statik. Kelas statik ialah kelas yang mengandungi ahli statik sahaja dan melarang instantiasi:

<code class="language-c#">public static class SomeClass
{
    public static int StaticMethod() { return 42; }
}</code>
Salin selepas log masuk

Seperti yang anda lihat, kelas statik tidak boleh dibuat seketika dan hanya boleh mengandungi kaedah dan medan statik.

Penggunaan dan perbezaan

Pilihan antara kaedah statik dan kaedah contoh bergantung pada kes penggunaan tertentu.

  • Kaedah statik: Sesuai untuk operasi yang tidak bergantung pada data atau keadaan khusus contoh.
  • Kaedah Contoh: Sesuai jika operasi memerlukan maklumat khusus contoh atau manipulasi objek.

Contoh

Pertimbangkan kod berikut:

<code class="language-c#">public class SomeClass
{
    public int InstanceMethod() { return 1; }
    public static int StaticMethod() { return 42; }
}</code>
Salin selepas log masuk
  • Untuk memanggil InstanceMethod, anda memerlukan contoh SomeClass:

    <code class="language-c#">  SomeClass instance = new SomeClass();
      instance.InstanceMethod(); // 编译并运行</code>
    Salin selepas log masuk
  • Kaedah statik boleh dipanggil terus menggunakan nama kelas:

    <code class="language-c#">  SomeClass.StaticMethod(); // 编译并运行</code>
    Salin selepas log masuk

Memahami konsep kaedah statik dan kelas statik adalah penting untuk mereka bentuk kelas dengan berkesan dalam C#.

Atas ialah kandungan terperinci Apa yang membezakan kaedah statik dari kaedah contoh dalam C#?. 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