CodeBlanks Logo Icon CodeBlanks

Static metotlar

C# kursu · Orta seviye · Ders 31/116

static metotları ve örnek olmadan çağırmayı öğrenirsin.

Static metotlar

Bir statik metot (static method), sınıf adı üzerinden çağrılır ve örnek üretmeyi gerektirmez. Örnek alanlarına erişemez; yalnızca statik alanları kullanabilir.

Tanımlamak için static anahtar kelimesi dönüş türünden önce yazılır: public static int Square(int n). Çağırmak için MathHelper.Square(5) yazılır. Yardımcı (helper) işlemler, matematiksel hesaplar ve dönüşümler statik metot olarak tasarlanır.

Ne zaman statik metot?

Statik metot, örnek durumuna (instance state) ihtiyaç duymayan işlemler için uygundur. Bir metot yalnızca parametrelerine ve sınıfın statik üyelerine bakıyorsa, statik yapılabilir.

Örnek: int.Parse("42"), Math.Max(3, 5), string.IsNullOrEmpty(s). Bunların hiçbiri bir nesne örneği gerektirmez. Öte yandan bir Account nesnesinin Balance alanını okuyan metot örnek metot olmalıdır.

Uygulama Kare hesaplayan yardımcı

MathHelper sınıfına public static int Square(int n) metodunu ekle. Gövdesi n * n döndürsün. Main içinde MathHelper.Square(5) çağırıp sonucu yazdır.

Örnek çözümü göster
MathHelper içine `public static int Square(int n) { return n * n; }` ekle. Main içine `Console.WriteLine(MathHelper.Square(5));` yaz.
Örnek çözüm:
using System;

class MathHelper
{
    public static int Square(int n)
    {
        return n * n;
    }
}

class Program
{
    static void Main()
    {
        Console.WriteLine(MathHelper.Square(5));
    }
}

Kendini test et

  1. Boşluğu doldur: statik metot tanımı

    class MathHelper
    {
        public ____
        {
            return n * n;
        }
    }
    Cevabı göster
    class MathHelper
    {
        public static int Square(int n)
        {
            return n * n;
        }
    }
  2. Aşağıdakilerden hangisi doğrudur?

    • Statik metot yalnızca statik üyelere erişir.
    • Statik metot örnek alanlara erişebilir.
    • Statik metot yalnızca örnek üzerinden çağrılır.
    • Statik metot yapıcı metot olabilir.
    Cevabı göster

    Statik metot yalnızca statik üyelere erişir. — Doğru. Statik metot örnek üyelere erişemez, yalnızca statik üyelere erişir.

  3. Eşleştir: statik metot çağrıları

    Math.Max(3, 5)
    iki sayının büyüğü
    int.Parse("42")
    dizeyi tamsayıya çevirir
    MathHelper.Square(5)
    kareyi hesaplar
    string.IsNullOrEmpty(s)
    boş dizeyi denetler

Orta seviye bölümündeki tüm dersler