C# Dersleri 20 - Constructor

     Bir Class'ın yeni bir nesnesini oluştururken çoğu zaman bazı default değerler atamak isteriz. Constructor'lar bu konuda bize yardımcı olurlar. Constructor'ları kısaca, bir Class'tan yeni bir nesne oluşturulurken çalışan method olarak tanımlayabiliriz.

     Bir önceki makalede yeni bir Class oluşturmayı ve bu Class'tan yeni bir nesne oluşturmayı konuşmuştuk. Şimdi bir Windows form uygulaması oluşturup forma bir adet Button ekleyelim. Daha sonra projeye "DogumGunu" adında bir Class ekleyelim.      

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WinDeneme
{
    class DogumGunu
    {
    }
}

     Oluşturduğumuz Class'lara Constructor eklemek zorunda değiliz. Eğer bir Class'ta Constructor yoksa, Compiler o Class'ta hiç bir iş yapmayan ve hiç bir parametre almayan boş bir Constructor varmış gibi davranır. Şimdi biz bir Constructor oluşturalım.    

class DogumGunu
{
    public DogumGunu()
    {

    }
}

     Constructor'lar public keywordu ile tanımlanır(public keywordunu başka bir makalede detaylı konuşacağız). Constructor'ın adı, Class adı ile aynı olmak zorundadır.     

class DogumGunu
{
    int KisiSayisi;

    public DogumGunu(int kisi)
    {
        KisiSayisi = kisi;
    }

    public string Mesaj()
    {
        string mesaj = "Bugün " + KisiSayisi + " kişinin doğum günü";

        return mesaj;
    }
}

     Bu örnekte int parametre alan bir Constructor oluşturduk. Bu Constructor, gelen int değeri KisiSayisi adlı değişkene atıyor. Daha sonra da değişken Mesaj methodunda kullanılıyor. Şimdi formdaki Button'a tıklanınca çalışacak kod bloğuna bakalım.      

private void btnClick_Click(object sender, EventArgs e)
{
    DogumGunu dg = new DogumGunu(6);
    string classMesaji = dg.Mesaj();

    MessageBox.Show(classMesaji);
}

     Önce DogumGunu tipinde dg isimli bir değişken oluşturuyoruz. new DogumGunu(6) kod cümlesindeki "6", DogumGunu Class'ının Constructor'ına gönderdiğimiz int parametre. dg.Mesaj(); diyerek dönen string değeri, string tipindeki classMesaji değişkenine atayıp bu değişkeni MessageBox'ta gösteriyoruz. Projeyi çalıştırıp Button'a tıklarsanız "Bugün 6 kişinin doğum günü" yazan bir MessageBox çıktığını göreceksiniz.

     Projeyi buradan indirebilirsiniz.

YORUMLAR
Email Adresi *
Görüntülenecek İsim *
Yorum *
Paylaş
  • f