Static metotlar
- C# kursu
- Orta seviye
- Ders 31/116
- 5 dk
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.
Başlangıç kodu
using System;
class MathHelper
{
// Square statik metodunu ekle (int al, int döndür)
}
class Program
{
static void Main()
{
// Square metodunu çağır ve sonucu yazdır
}
}Ö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));
}
}Beklenen çıktı
25
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Boşluğu doldur: statik metot tanımı
class MathHelper
{
public ____
{
return n * n;
}
}
class MathHelper
{
public static int Square(int n)
{
return n * n;
}
}
Açıklama: `static int Square(int n)` ile statik metot tanımlandı.
2 Aşağıdakilerden hangisi doğrudur?
- Statik metot yapıcı metot olabilir.
- Statik metot örnek alanlara erişebilir.
- Statik metot yalnızca örnek üzerinden çağrılır.
- Statik metot yalnızca statik üyelere erişir. Doğru cevap
Açıklama: Statik metot örnek üyelere erişemez, yalnızca statik üyelere erişir.
3 Eşleştir: statik metot çağrıları
| Kavram | Anlamı |
|---|---|
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 |