Bu konu başlığı altındaki en önemli konulardan biride Constructor(yapılandırıcı metot).Sınıfların nesneler için bir şablon olduğunu söylemiştik.Nesneler olmadan sınıflar anlamsızlardı.Nesneler oluşturulurken otomatik çağrılan yapıya constructor denir.Constructor tanımlanması metotlara benzer. _Her zaman yeni bir nesne oluşturulduğunda constructor çağrılır. _

Constructorlar şu özelliklere sahiptir;

  • Her sınıf bir constructora sahiptir.

  • Bulunduğu sınıfın ismi kullanılır.

  • return tipi bulundurmaz.

  • Eğer oluşturduğumuz sınıfa açıkca constructor yazmazsak derleyici bizim yerimize “default constructor” ekler

### Default Constructor

Argüman/parametre almanyan contstuctordır. Örneğin:

public Bisiklet(){
	//Default Constructor
}

Constructor Örneği

Şimdi örnek üzerinden bu konuyu daha iyi kavrayalım.11.Sınıflar yazısında verdiğimiz Bisiklet sınıfı bir constructora sahipti;

 // Bisiklet sınıfı bir Constructora sahip
    public Bisiklet(int kadansBaslat, int vitesiBaslat, int hiziBaslat) {
        vites = vitesiBaslat;
        kadans = kadansBaslat;
        hiz = hiziBaslat;
    }

Bir sınıf constructor içeriyorsa, sınıfdan bir nesne oluşturduğumuzda bu constuctor çağrılır.Örneğin yeni bir Bisiklet nesnesi oluşturalım ve adını bisiklet1 koyalım.Constructorlar “new” operatörü ile çağrılır;

Bisiklet bisiklet1 = new Bisiklet(20, 0, 3);

new Bisiklet(20, 0, 3) hafızada yer oluşturur ve fieldlere ilk değerlerini atar.

Birden Fazla Constructor

Bisiklet sınıfı birden fazla constructorda bulundurabilir.Örneğin parametre almayan bir constructor;

public Bisiklet() {
    vites = 1;
  	kadans = 10;
   	hiz = 0;
}

İki constructor da tanımlanabilir çünkü parametre listeleri farklı olduğundan Metot Signatureleri farklıdır.Bir önceki yazıda bu olayı detaylandırmıştık.