Bir sınıftan new anahtar sözcüğüyle yeni bir nesne oluşturulduğu anda çalışan metottur. Yapıcı metotların diğer metotlardan farkları vardır.
- Yapıcı metot sınıf ismiyle aynı olmak zorundadır.
- Geriye değer döndürmez. Fakat değer döndürmeyen metotlarda kullanılan void yapıcı metotlarda kullanılmaz.
- Yapıcı metotlar parametre alabilirler, aşırı yüklü olabilirler.
Yapıcı metotlar sınıflardaki özelliklere ilk değerlerinin verilmesi gerektiğinde yada sınıftan bir nesne oluşturulduğu anda çalıştırılması istenen bir metot olduğunda kullanılabilir.
Örnek Uygulama:
Yapıcı metotlar için örnek uygulamamızı yapalım. İlk önce C# Consol Application Uygulamasını açıyoruz ve personel isimli sınıfımızı projeye dahil ediyoruz.
Sınıfı aşağıdaki gibi oluşturuyoruz.
1 2 3 4 5 6 7 8 9 |
class personel { public personel() //Sınıf ismiyle aynı olduğuna dikkat { Console.WriteLine("Personel nesnesi oluşturuldu"); } } |
Daha sonra ana programımızda aşağıdaki şekilde personel sınıfından nesne oluşturduğumuzda yapıcı metot çalışacaktır ve ekranda “Personel nesnesi oluşturuldu” yazacaktır.
1 2 3 4 5 6 7 8 9 |
class Program { static void Main(string[] args) { personel kisi = new personel(); Console.ReadKey(); } |
Parameretli kullanımı için aşağıdaki örneği inceleyelim. Yine personel isimli class içerisinde yapıcı metodumuzu parametreli olarak oluşturuyoruz.
1 2 3 4 5 6 7 8 9 |
class personel { public personel(string metin) { Console.WriteLine(metin); } } |
Ana programda aşağıdaki şekilde nesnemizi oluşturuyoruz.
1 2 3 4 5 6 7 8 9 10 |
class Program { static void Main(string[] args) { personel kisi2 = new personel("Parametre alan yapıcı metot oluşturuldu"); Console.ReadKey(); } } |
Örnek2:
“urun” isimli sınıfımızı tanımlıyoruz ve ilk değer atamasını kurucu metot kullanarak yapıyoruz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
class urun { string ad; public string Ad { get { return ad; } set { ad = value; } } int grupNo; public int GrupNo { get { return grupNo; } set { grupNo = value; } } double miktar; public double Miktar { get { return miktar; } set { miktar = value; } } float alisFiyat; public float AlisFiyat { get { return alisFiyat; } set { alisFiyat = value; } } float kar; public float Kar { get { return kar; } set { kar = value; } } public urun() //Kurucu metot { ad = ""; grupNo = 0; miktar = 0; alisFiyat = 0; kar = 0; } } |
Program.cs kodlarımız
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
class Program { static void Main(string[] args) { urun u = new urun(); Console.WriteLine(u.Ad); Console.WriteLine(u.AlisFiyat); Console.WriteLine(u.Miktar); Console.WriteLine(u.Kar); Console.ReadKey(); } } |
baya iyi bir sayfaydı her işimede yaradı
Ne arasam buluyorum en sevdiğim sayfa ❤️