📘 10.3 – static Metotlar


🔹 Açıklama:

C# dilinde bir metot static olarak tanımlandığında, sınıf üzerinden doğrudan çağrılabilir ve nesne oluşturmaya gerek kalmaz. Bu metotlar genellikle yardımcı işlemler için kullanılır: matematiksel işlemler, string düzenlemeleri, tarih biçimlendirmeleri gibi.

static metotlar, sadece diğer static üyelerle çalışabilir ve this anahtar kelimesine erişemezler.


🔍 Nerelerde Kullanılır?

  • Sık kullanılan fonksiyonların merkezi bir sınıfta toplanmasında
  • Nesneye bağlı olmayan hesaplamalarda
  • Yardımcı (Helper) sınıflarda ve araçlarda
  • Uygulama genelinde erişilebilecek metotların oluşturulmasında
  • Performans gerektiren, nesne yükü istemeyen işlemlerde

💡 Avantajları:

ÖzellikAçıklama
Nesne gerekmezSınıf üzerinden çağrılır
PerformanslıdırBellekte nesne oluşturulmaz
Kod tekrarını azaltırTek bir yerden erişim sağlar
Uygulama geneline açıktırHer yerden çağrılabilir

🎯 Kazanımlar:

Bu başlığı tamamladığında öğrenci:

  • static metotların yapısını ve kullanım yerlerini öğrenir
  • Nesneye ihtiyaç duymadan nasıl işlev çağrılacağını kavrar
  • Yardımcı metot tasarımı ve uygulama genelinde erişim tekniklerini öğrenir
  • Kodu sadeleştirme ve yönetilebilir hâle getirme pratiği kazanır

🧪 10.3 – static Metotlar: Uygulamalı 5 Örnek


📌 Örnek 1: Sayı Toplayan static Metot

🎯 Amaç: İki sayıyı toplayan basit bir static metot oluştur.

public class Matematik
{
    public static int Topla(int a, int b)
    {
        return a + b;
    }
}

// Kullanım:
int sonuc = Matematik.Topla(25, 15);
MessageBox.Show("Sonuç: " + sonuc);

📝 Açıklama:

Topla metodu nesne oluşturmadan doğrudan sınıf üzerinden çağrılır.


📌 Örnek 2: Tarih Formatlayan static Metot

🎯 Amaç: Tarihi “gün.ay.yıl” biçiminde gösteren metot.

public static class TarihAraci
{
    public static string Formatla(DateTime tarih)
    {
        return tarih.ToString("dd.MM.yyyy");
    }
}

// Kullanım:
string bugun = TarihAraci.Formatla(DateTime.Now);
MessageBox.Show("Bugün: " + bugun);

📝 Açıklama:

Yardımcı bir işlemi herhangi bir formdan kolayca çağırmak mümkündür.


📌 Örnek 3: Metni Küçük Harfe Çevirme

🎯 Amaç: Girilen metni küçük harfe dönüştüren metot.

public static class MetinAraci
{
    public static string Kucult(string veri)
    {
        return veri.ToLower();
    }
}

// Kullanım:
string sonuc = MetinAraci.Kucult("MERHABA");
MessageBox.Show(sonuc);

📝 Açıklama:

Yine sınıf adıyla doğrudan çağrılan bir metot.


📌 Örnek 4: Sayının Tek mi Çift mi Olduğunu Bulma

🎯 Amaç: Sayının çift olup olmadığını kontrol et.

public static class SayisalKontrol
{
    public static bool CiftMi(int sayi)
    {
        return sayi % 2 == 0;
    }
}

// Kullanım:
bool sonuc = SayisalKontrol.CiftMi(42);
MessageBox.Show("Çift mi? " + sonuc);

📝 Açıklama:

Mantıksal test yapan static metotlarla karar verme desteklenir.


📌 Örnek 5: Uygulama İstatistiklerini Gösteren static Metot

🎯 Amaç: O ana kadar oluşturulmuş nesne sayısını göster.

public class Sistem
{
    public static int NesneSayisi = 0;

    public Sistem()
    {
        NesneSayisi++;
    }

    public static string RaporVer()
    {
        return "Toplam nesne: " + NesneSayisi;
    }
}

// Kullanım:
new Sistem();
new Sistem();
MessageBox.Show(Sistem.RaporVer());

📝 Açıklama:

Hem static değişken hem static metot birlikte kullanılmıştır.


✅ Özet:

Bu örneklerle öğrenciler:

  • static metotların nesne olmadan çağrıldığını kavradı
  • Yardımcı işlemlerin kodun herhangi bir yerinden erişilebilir olduğunu gördü
  • Kod tekrarını azaltan pratik araçlar geliştirmeyi öğrendi

Leave a Reply