Java'da Yapıcı Zincirleme

Java Da Yapici Zincirleme



Java'da, yapıcılar, sınıfın örneğini başlatmada çok önemli bir rol oynar. Bunlar Java yöntemlerine benzer. Ancak, normal bir yöntemin herhangi bir geçerli adı olabilirken, yapıcı adı her zaman sınıf adıyla aynıdır. Çoğunlukla, bunlar ayrıca bir nesneyi bildirmek için özel yöntemler olarak da adlandırılır. Kalıtımın yardımıyla oluşan yapıcı zincirlemesi oluşturabilirsiniz. Çocuk/alt sınıf yapıcısı önce üst/üst sınıf yapıcısını çağırır ve ardından alt sınıf yapıcıları çağrılabilir.

Bu gönderi, Java'da yapıcı zincirleme hakkında bilgi verecektir.







Java'da Yapıcı Zincirleme

Kurucu değiştirme, belirtilen hedeflere göre bir kurucuyu başka bir kurucuya çağırmak için en önemli prosedürdür. Yapıcı zincirlemenin birincil kullanımlarından biri, birden fazla kurucuya sahipken gereksiz kodlardan kaçınmaktır. Kodun kolayca anlaşılır ve okunabilir olmasını sağlar.



Aşağıda belirtildiği gibi Java'da yapıcı zincirleme gerçekleştirmek için iki yöntem vardır:



Yapıcı zincirlemeyi daha iyi anlamak için bu yöntemleri tek tek inceleyelim.





Yöntem 1: “this()” Anahtar Kelimesini Kullanarak Aynı Sınıf İçinde Yapıcı Zincirleme

Yapıcı zincirleme aynı sınıf içinde gerçekleştirildiğinde, Java “ Bu() ” anahtar kelimesi kullanılır. Bir sınıf örneği başlatıldığında varsayılan yapıcı çağrılır. “ kullanarak başka bir yapıcıyı çağıracaktır. Bu ” anahtar kelime. Ardından, sonucu konsolda görüntülemek için 'println()' yöntemini çağırın:



dakika ( ) {
Bu ( 5 ) ;
System.out.println ( 'Varsayılan yapıcı' ) ;
}


Şimdi, “ parametresinden oluşan ikinci yapıcıyı çağırın. A ” ve parametrelerin değerini “ Bu() ” anahtar kelime. Ardından, “ println() ” ve sonucu göstermek için argüman olarak “a”yı iletin:

dakika ( int bir ) {
Bu ( 5 , yirmi ) ;
System.out.println ( A ) ;
}


Bu yapıcıda, iki tamsayı türü parametresini ' olarak geçtik. A ' Ve ' B ”. Bundan sonra, “println()” yöntemini çağırın ve “ a*b ”, bu değişkenlerin ürününü döndürür:

dakika ( int a, int b ) {
System.out.println ( A * B ) ;
}


İçinde ' ana() ” yöntemi, diğer kurucuları otomatik olarak çağıracak ve sonucu konsolda görüntüleyecek olan varsayılan kurucuyu çağırın:

genel statik geçersiz ana ( Dize bağımsız değişkenleri [ ] ) {
yeni dakika ( ) ;
}


Sonuç olarak, tüm kurucuların çıktısı konsolda gösterilecektir:


Yapıcıyı birden çok sınıfta zincirlemek istiyorsanız, aşağıda belirtilen yöntemi inceleyin.

Yöntem 2: “super()” Anahtar Kelimesini Kullanarak Başka Bir Sınıfa Yapıcı Zincirleme

Yapıcıları bir sınıftan diğerine de zincirleyebilirsiniz. Bunun için “super()” anahtar sözcüğü kullanılır. Bunu yapmak için, ana sınıfta aşağıdaki kodu kullanın.

Her şeyden önce, bir dizi tipi değişkeni tanımlayın ' isim ” ve ana sınıf adını kullanarak ilk yapıcıyı çağırın:

Dize adı;
dakika ( ) {
Bu ( '' ) ;
System.out.println ( 'Temel sınıfın kurucusu olmadan' ) ;
}


İkinci yapıcıyı çağırın ve yukarıda açıklanan değişkeni iletin ' Dize adı ” parametresi olarak. Kullan ' Bu değere erişmek için anahtar kelime ve “ println() ” yazdırma amaçlı yöntem:

dakika ( Dize adı ) {
this.isim = isim;
System.out.println ( 'Taban için parametreleştirilmiş oluşturucu çağrılıyor' ) ;
}


İçinde ' ana() ” yöntemi, alt sınıfı “ parametresiyle çağırın isim ”. Bu, ' parametresinin olduğu üst sınıf kurucularını çağıracaktır. isim ” geçilir. Ardından, alt sınıf yapıcısını “ parametresiyle çağırır. isim ”:

genel statik geçersiz ana ( Dize bağımsız değişkenleri [ ] ) {
yeni Çocuk ( 'isim' ) ;
}


“ Kullanan bir alt sınıf oluşturulur. uzanır ” ana sınıfı devralmak ve üçüncü kurucuyu çağırmak için anahtar kelime. Bundan sonra bir sonraki kurucuyu çağırın ve bu kurucunun içinde, üst sınıf ikinci kurucuyu çağırın:

sınıf Çocuk dakikayı uzatır {
Çocuk ( ) {
System.out.println ( 'Alt sınıfın bağımsız değişken yapıcısı olmadan' ) ;
}
Çocuk ( Dize adı ) {
Süper ( isim ) ;
System.out.println ( 'Çocuğun parametreleştirilmiş yapıcısı çağrılıyor' ) ;
}
}


Çıktı


Hepsi Java'da yapıcı zincirleme ile ilgili.

Çözüm

Java'da, aynı sınıftaki yapıcı zincirleme “this()” anahtar kelimesi kullanılarak yapılırken, çeşitli sınıflar üzerinde yapıcı zincirleme gerçekleştirmek için “super()” anahtar sözcüğü kullanılır. Yapıcı zincirleme, kalıtımın yardımıyla gerçekleşir. Alt sınıf yapıcısı önce süper sınıf yapıcısını çağırır ve ardından alt sınıf yapıcıları çağrılabilir. Bu gönderi, Java'da yapıcı zincirlemeyi pratik örneklerle tartıştı.