9.1 – Constructor (Yapıcı) Metotlar


📘 9.1 – Constructor (Yapıcı) Metotlar


🔹 Açıklama:

Constructor (yapıcı) metotlar, bir sınıftan nesne oluşturulduğunda otomatik olarak çalışan özel metotlardır. Bu metotlar sınıf adıyla aynı isme sahiptir ve geri dönüş türü (void, int vb.) yazılmaz.

Constructor’lar genellikle:

  • Sınıfın ilk hâlini belirlemek,
  • Gerekli değerleri başlatmak,
  • Kullanıcıdan veri almadan önce varsayılanları ayarlamak,
  • Nesne oluşturulurken parametreli bilgi almak için kullanılır.

🔍 Söz Dizimi:

public class Ogrenci
{
    public string Ad { get; set; }

    public Ogrenci() // parametresiz constructor
    {
        Ad = "Bilinmiyor";
    }
}

📍 Kullanım Alanları:

  • Otomatik başlatmalar (default değer atama)
  • Form yüklendiğinde sınıf verisinin hazır olması
  • Veri girişi yapılmadan önce nesnenin tanımlanması
  • Kod tekrarını azaltarak düzenli yapı kurma

🎯 Kazanımlar:

  • Constructor metodunun tanımını ve görevini öğrenme
  • Parametresiz ve parametreli constructor’ların farkını kavrama
  • Sınıfın ilk hâlini kurma yetisi kazanma
  • Form uygulamalarında otomatik veri hazırlığına geçiş yapma

🧪 9.1 – Constructor (Yapıcı) Metotlar: Uygulamalı 5 Örnek


📌 Örnek 1: Parametresiz Constructor ile Varsayılan Değer Atama

🎯 Amaç: Nesne oluşturulduğunda, “Ad” özelliği otomatik “Bilinmiyor” olarak ayarlansın.

public class Ogrenci
{
    public string Ad { get; set; }

    public Ogrenci()
    {
        Ad = "Bilinmiyor";
    }
}

// Kullanımı:
Ogrenci ogr = new Ogrenci();
MessageBox.Show(ogr.Ad); // "Bilinmiyor"

📝 Açıklama:

Kullanıcı veri girmezse bile, nesne boş kalmaz.


📌 Örnek 2: Parametreli Constructor ile Veri Alarak Nesne Oluşturma

🎯 Amaç: Ad ve Soyad bilgisi nesne oluşturulurken alınsın.

public class Ogrenci
{
    public string Ad { get; set; }
    public string Soyad { get; set; }

    public Ogrenci(string ad, string soyad)
    {
        Ad = ad;
        Soyad = soyad;
    }
}

// Kullanımı:
Ogrenci ogr = new Ogrenci("Ahmet", "Yılmaz");

📝 Açıklama:

Bu yöntemle, oluşturma esnasında tüm bilgiler alınır ve daha güvenli kod yazılır.


📌 Örnek 3: Constructor ile Form Yüklenmeden Veri Hazırlığı

🎯 Amaç: Öğrenci bilgileri, form yüklendiğinde hazır gelsin.

public class Ogrenci
{
    public string Ad { get; set; }
    public string Bolum { get; set; }

    public Ogrenci()
    {
        Ad = "Henüz girilmedi";
        Bolum = "Yazılım";
    }
}

// Form_Load içinde:
Ogrenci ogr = new Ogrenci();
txtAd.Text = ogr.Ad;
cmbBolum.Text = ogr.Bolum;

📝 Açıklama:

Constructor sayesinde, form açıldığında alanlar otomatik dolu gelir.


📌 Örnek 4: Constructorda Hesaplama Yapmak

🎯 Amaç: Öğrencinin not ortalaması nesne oluşturulurken hesaplanır.

public class Ogrenci
{
    public double Ortalama { get; }

    public Ogrenci(double n1, double n2, double n3)
    {
        Ortalama = (n1 + n2 + n3) / 3;
    }
}

// Kullanımı:
Ogrenci ogr = new Ogrenci(70, 85, 90);
MessageBox.Show($"Ortalama: {ogr.Ortalama}");

📝 Açıklama:

Nesne oluşturulurken hesap yapılır, ayrı bir fonksiyona gerek kalmaz.


📌 Örnek 5: Nesne Listesini Constructor ile Başlatma

🎯 Amaç: Başlangıçta birden fazla öğrenci bilgisi hazır olsun.

public class Ogrenci
{
    public string Ad { get; set; }

    public Ogrenci(string ad)
    {
        Ad = ad;
    }
}

// Liste hazırlığı
List<Ogrenci> ogrList = new List<Ogrenci>()
{
    new Ogrenci("Ayşe"),
    new Ogrenci("Mehmet"),
    new Ogrenci("Selin")
};

📝 Açıklama:

Constructor sayesinde listeyi tek satırda, düzenli ve temiz biçimde tanımlarsın.


✅ Özet:

Bu örneklerle öğrenciler:

  • Constructor’ın yazımını ve çağrılmasını,
  • Nesne başlatmanın farklı yollarını,
  • Formlar ile sınıfların nasıl uyumlu çalıştığını,
  • Constructor ile hazır veri, hesaplama ve ön tanımlı değer oluşturmayı öğrendiler.

1 Response

  1. Pingback : A'DAN Z'YE NTP - İÇİNDEKİLER - Hasan TANDOĞAN

Leave a Reply