Varsayılan değerli parametreler, bir metoda argüman olarak değer verilmediği durumlarda kullanılacak varsayılan değerleri belirlemek için kullanılır. Bu şekilde, metot çağrıldığında argüman olarak bir değer verilmezse, varsayılan değer kullanılır. Örneğin:
public void SelamVer(string isim = "Dünya")
{
Console.WriteLine("Merhaba, " + isim + "!");
}
Yukarıdaki örnekte, SelamVer
metodu bir string
türünde isim
parametresi alır ve varsayılan olarak “Dünya” değerini alır. Ancak metot çağrılırken bir isim verilirse, verilen isim kullanılır.
SelamVer(); // Çıktı: Merhaba, Dünya!
SelamVer("Ahmet"); // Çıktı: Merhaba, Ahmet!
Default parametre kullanımı, default değeri olmayana parametrelerle birlik kullanılması durumunda opsiyonel özelliğini kaybetmemek için genellikle en sonda yazılır. Opsiyonel parametreler, metot imzasında belirtilen sırayla argümanların verilmesi gerektiği durumlarda kullanılır. Metodu çağıran kod, argümanlarını sırayla vermeyi unutsa bile, opsiyonel parametreler sayesinde hata almadan işlem yapabilir.
public void BilgiGoster(string ad, int yas = 25, string meslek = "Öğrenci")
{
Console.WriteLine("Ad: " + ad);
Console.WriteLine("Yaş: " + yas);
Console.WriteLine("Meslek: " + meslek);
}
Yukarıdaki örnekte, BilgiGoster
metodu ad
isimli bir zorunlu parametre ve yas
ile meslek
isimli opsiyonel parametreler alır. yas
ve meslek
parametrelerine değer verilmezse, varsayılan değerleri kullanılır.
BilgiGoster("Ahmet");
BilgiGoster("Ayşe", 30);
BilgiGoster("Can", 40, "Mühendis");
Yukarıdaki çağrılarda, sırasıyla ad, yaş ve meslek parametrelerine değer verildiğinde, metot başarıyla çalışır. Opsiyonel parametreler, metotu çağıran kod bloğunun daha esnek olmasını sağlar.
Bu örneklerde gördüğünüz gibi, varsayılan değerli ve opsiyonel parametreler C# programlama dilinde metotları daha esnek hale getirir ve kodun daha kolay okunmasını ve kullanılmasını sağlar. Metotların farklı senaryolar için kullanılabilmesini sağlar ve gerektiğinde farklı parametrelerle çağrılabilmesini sağlar.
Expression-Body metotları, C# 6.0 sürümüyle birlikte gelen bir dil özelliğidir. Bu özellik, kısa ve öz metotlar yazmanıza olanak tanır ve genellikle tek bir ifade içeren metotlar için kullanılır. Expression-Body metotlarını kullanarak metotları daha anlaşılır ve daha az kodla yazabilirsiniz.
Geleneksel bir metot tanımı şu şekildedir:
public int Kare(int sayi)
{
return sayi * sayi;
}
Expression-Body metotlarını kullanarak aynı işlevi daha kısa bir şekilde yazabiliriz:
public int Kare(int sayi) => sayi * sayi;
Bu durumda =>
(lambda operatörü) ifadesi kullanılarak metotun dönüş değeri belirtilmiş olur. Expression-Body metotları genellikle tek bir ifade içeren basit metotlar için kullanılır ve metotun gövdesi bu ifadeyle birlikte verilir.
Expression-Body metotlarının kullanımı sadece metot gövdesi tek bir ifade içeriyorsa mümkündür.
Expression-Body metotları, kodunuzu daha temiz, daha anlaşılır ve daha az yazarak yazmanıza olanak sağlar. Özellikle kısa ve basit metotlar için bu özellik oldukça kullanışlıdır.