C# programlama serimize devam ederken, sınıflar içinde geriye değer döndürmeyen (void) metotları konsol uygulamaları üzerinde derinlemesine incelemeye devam ediyoruz. Bir önceki dersimizde temel bir karşılama mesajı gösteren metodu ele almıştık. Bu yazımızda ise, parametre alan void metotlarla daha dinamik ve esnek çıktılar nasıl oluşturulur, adım adım göreceğiz.
Parametre Alan Void Metotların Gücü
Geriye değer döndürmeyen (void) metotlar, belirli bir görevi yerine getiren ancak herhangi bir değer geri döndürmeyen fonksiyonlardır. Bu metotlar, görevlerini tamamlamak için dışarıdan parametre olarak veri alabilirler. Bu sayede, aynı metodu farklı verilerle çağırarak farklı sonuçlar elde edebiliriz. Örneğin, bir "kişi listesi" oluşturan metot, her çağrıldığında farklı bir isim ve şehir bilgisini parametre olarak alıp ekrana yazdırabilir.
Bu yaklaşım, kodunuzu daha yeniden kullanılabilir ve modüler hale getirir. Tek bir metot tanımıyla, farklı senaryolar için esnek çözümler üretebilirsiniz.
Uygulama Örneği: Kişi Listesi Sınıfı ile Dinamik Çıktılar
Şimdi, bir konsol uygulaması üzerinde Kisiler adında bir sınıf tanımlayalım ve bu sınıf içine parametre alan geriye değer döndürmeyen bir metot ekleyelim.
1. Kisiler Sınıfını Oluşturma:
Projenize yeni bir "Sınıf" ekleyerek Kisiler.cs adında bir dosya oluşturun. Bu sınıf, kişi bilgilerini listeleyecek metodu içerecek:
public class Kisiler
{
// Parametre alan geriye değer döndürmeyen metot tanımı
public void KisiListesi(string adSoyad, string sehir)
{
for (int i = 1; i <= 10; i++) // 1'den 10'a kadar döngü oluştur
{
// Parametre olarak gelen adSoyad ve sehir bilgilerini konsola yazdır
Console.WriteLine($"{i}. {adSoyad} -- {sehir}");
}
}
}
Yukarıdaki kodda:
Kisilersınıfı,publicerişim belirleyicisiyle tanımlanmıştır.KisiListesimetodu,public voidolarak tanımlanmıştır, yani herhangi bir değer döndürmez ve dışarıdan erişilebilir.- Metot,
string adSoyadvestring sehirolmak üzere iki adet parametre alır. Bu parametreler, metodun çağrıldığı yerden gönderilecek verileri temsil eder. - Metot içinde bir
fordöngüsü kullanılarak, gönderilenadSoyadvesehirbilgileri 1'den 10'a kadar numaralandırılarak konsola yazdırılır.${i}. {adSoyad} -- {sehir}formatı, C# 6.0 ve sonraki sürümlerinde kullanılan string interpolasyonu ile daha okunabilir bir çıktı sağlar.
2. Metodu Program.cs İçinden Çağırma:
Konsol uygulamasının ana çalışma noktası olan Program.cs dosyasındaki Main metodu içinde, Kisiler sınıfından bir nesne oluşturarak KisiListesi metodunu çağırabiliriz:
internal class Program
{
static void Main(string[] args)
{
// Kisiler sınıfından bir nesne (instance) oluşturma
Kisiler kisiObjesi = new Kisiler();
// Nesne üzerinden KisiListesi metodunu çağırırken parametreleri gönderiyoruz
kisiObjesi.KisiListesi("Ahmet Aslan", "Trabzon");
// Konsol ekranının hemen kapanmaması için kullanıcıdan bir tuş bekliyoruz
Console.ReadKey();
}
}
Bu kod bloğunda:
Kisiler kisiObjesi = new Kisiler();satırı,KisilersınıfındankisiObjesiadında yeni bir nesne oluşturur.kisiObjesi.KisiListesi("Ahmet Aslan", "Trabzon");satırı,KisiListesimetodunu çağırırken "Ahmet Aslan" ve "Trabzon" değerlerini parametre olarak gönderir. Bu değerler,KisiListesimetodunun içindekiadSoyadvesehirparametrelerine atanır ve döngü içinde kullanılır.
Sonuç
Sınıf içinde parametre alan geriye değer döndürmeyen metotlar, C# programlamada daha esnek ve dinamik uygulamalar geliştirmenizi sağlar. Aynı metodu farklı verilerle çağırarak, kod tekrarını önler ve uygulamanızın daha modüler olmasını sağlarsınız. Bu, özellikle veri listeleme, mesaj gösterme veya belirli işlemleri farklı girdilerle tekrarlama gibi senaryolarda oldukça kullanışlıdır.

