2016-03-19 18 views
3

İkinci sınıf bir alt sınıftaki bir süper sınıf yapıcısını kullanırken, bağımsız değişkeni büyükbaba kurucusuna veya ana üst kurucuya iletir mi?Torun sınıfından süper sınıf kurucuyu aramak, ebeveyn veya büyükbaba kurucuyu çağırır mı?

//top class 
public First(type first){ 
    varFirst = first; 
} 

//child of First 
public Second(type second){ 
    super(second); //calls First(second) 
} 

//child of Second 
public Third(type third){ 
    super(third); //calls First(third) or Second(third)? 
} 
+0

(adlandırma kurallarına göre Sınıf Tipi) tipi varsayarak aynıdır:

public class First { public First(String first) { System.out.println("in first"); } } public class Second extends First { public Second(String second) { super(second); System.out.println("in second"); } } public class Third extends Second { public Third(String third) { super(third); System.out.println("in third"); } public static void main(String[] args) { new Third("yay!"); } } 

çıktı elde ediyorum: Bu kurucular bazı baskı deyimi eklerseniz kendiniz görmek oldukça kolaydır tüm 3 Sınıflar için ve varFirst ayrıca bir Türün örneğidir, sonra ** Evet **, örnek bir örnek deneyebilirsiniz: ** int ** ile değiştirin ve her kurucuda System.out.println (intValue); -> kurucu Üçüncü, * 2 * 'ya İkinci ve ilk AĞAĞA yazacak bir değeri iletecektir. –

cevap

4

super acil ebeveynin yapıcı çağırır. Yani Third numaralı telefondan super numaralı telefonu arayarak Second 'un yapıcısını arayarak First' u arayabiliriz.

in first 
in second 
in third 
İlgili konular