C# - Constructor(Yapıcı Metodlar) Nedir Ve Nasıl Kullanılır?

C# dilinde constructorlar, sınıfların nesneleri oluşturulduğunda ilk kez çalışan özel metodlardır. Constructorlar, sınıfın yapısını ve özelliklerini tanımlar ve nesne oluşturulduğunda sınıfın durumunu belirler.

Constructorlar, sınıfın adı ile tanımlanır ve geri dönüş tipi yoktur. Sınıfın özelliklerini ve değişkenlerini başlatmak için kullanılır. Constructorlar, sınıfın özelliklerine değer atama gibi işlemleri gerçekleştirir.

C# dilinde bir sınıf birden fazla constructor içerebilir. Constructorlar, farklı parametrelerle çağrılabilir ve nesnenin farklı durumlarını belirlemek için kullanılabilir. Örneğin, bir Kitap sınıfında, farklı constructorlar farklı parametreler alarak kitabın adı, yazarı, yayınevi, sayfa sayısı vb. özelliklerinin atanmasını sağlayabilir.

C# dilinde, bir sınıfın constructoru oluşturulmadan önce varsayılan constructor (default constructor) çalışır. Varsayılan constructor, parametre almaz ve sınıfın özelliklerini varsayılan değerlerle başlatır. Ancak, sınıfın özelliklerinin belirli değerlerle başlatılması gerektiğinde, özel constructorlar kullanılır.

Constructorlar, nesne oluşturma sürecinde otomatik olarak çalışır ve önceden belirlenmiş kod bloklarını yürütür. Bu nedenle, constructorlar nesnenin durumunu belirlemek ve sınıfın işlevselliğini başlatmak için önemlidir. Constructorlar, sınıfların özelliklerinin ve davranışlarının tanımlanmasında önemli bir role sahiptir.

Sonuç olarak, C# dilinde constructorlar, sınıfların nesneleri oluşturulduğunda çalışan özel metotlardır. Constructorlar, sınıfın özelliklerini ve davranışlarını tanımlar ve nesne oluşturma sürecinde sınıfın durumunu belirler. Bir sınıf birden fazla constructor içerebilir ve farklı parametrelerle çağrılarak farklı durumlarda kullanılabilir.

Örnek Kullanım

public class Kitap
                      {
                          public string Adi { get; set; }
                          public string Yazar { get; set; }
                          public string Yayinevi { get; set; }
                          public int SayfaSayisi { get; set; }

                          // Parametre alan constructor
                          public Kitap(string adi, string yazar, string yayinevi, int sayfaSayisi)
                          {
                              Adi = adi;
                              Yazar = yazar;
                              Yayinevi = yayinevi;
                              SayfaSayisi = sayfaSayisi;
                          }

                          // Varsayılan constructor
                          public Kitap()
                          {
                              Adi = "Bilinmeyen";
                              Yazar = "Bilinmeyen";
                              Yayinevi = "Bilinmeyen";
                              SayfaSayisi = 0;
                          }
                      }
                      
using System;

                      public class Program
                      {
                          public static void Main(string[] args)
                          {
                              // Kitap sınıfından bir nesne oluşturma
                              Kitap kitap1 = new Kitap("Sefiller", "Victor Hugo", "Can Yayınları", 1234);

                              // Varsayılan constructor kullanarak bir nesne oluşturma
                              Kitap kitap2 = new Kitap();

                              // Kitapların özelliklerini ekrana yazdırma
                              Console.WriteLine("Kitap 1 - Adı: {0}, Yazarı: {1}, Yayınevi: {2}, Sayfa Sayısı: {3}", kitap1.Adi, kitap1.Yazar, kitap1.Yayinevi, kitap1.SayfaSayisi);
                              Console.WriteLine("Kitap 2 - Adı: {0}, Yazarı: {1}, Yayınevi: {2}, Sayfa Sayısı: {3}", kitap2.Adi, kitap2.Yazar, kitap2.Yayinevi, kitap2.SayfaSayisi);
                          }
                      }
                      

Program Çıktısı:

Kitap 1 - Adı: Sefiller, Yazarı: Victor Hugo, Yayınevi: Can Yayınları, Sayfa Sayısı: 1234
                      Kitap 2 - Adı: Bilinmeyen, Yazarı: Bilinmeyen, Yayınevi: Bilinmeyen, Sayfa Sayısı: 0
                      

Yorumlar

Yorum Yapın

İlginizi çekebilir

Rise of Kingdoms Göç İçin Kaç Pasaport Gerekiyor?

Rise of Kingdoms oyununda krallıklar arası göç etmek için güç seviyeleri...

Rise of Kingdoms Maden Macro Botu

Rise of Kingdoms oyunu için geliştirdiğim maden macro botunu sizlerle paylaşıyorum. Bot oyun dinamiklerine asla müdehale etm...