Java中有父類和子類之分,子類可以繼承父類的屬性和方法。在類的繼承中,涉及到屬性的加載順序問題,這對于開發者來說是一個重要的問題。那么Java父類和子類屬性加載順序是怎么樣的呢?我們來了解一下。
在Java中,屬性的加載順序是從父類到子類,先加載父類的屬性,在調用完父類的構造函數之后再加載子類的屬性。
public class Parent { public int age = 50; public Parent() { System.out.println("Parent Constructor"); } } public class Child extends Parent { public int age = 20; public Child() { System.out.println("Child Constructor"); } } public class Main { public static void main(String[] args) { Child child = new Child(); System.out.println("child's age = " + child.age); } }
以上代碼段中,我們定義了一個父類Parent和一個子類Child,同時在每個類中分別定義了一個age屬性。在Main類中創建了Child類的對象child并輸出child的age屬性。接下來我們來看運行結果:
Parent Constructor Child Constructor child's age = 20
可以看到,程序先輸出了“Parent Constructor”,調用了父類的構造函數。接著輸出了“Child Constructor”,調用了子類的構造函數。最后輸出了子類的age屬性,值為20。
所以,Java父類和子類的屬性加載順序是從父類到子類,先加載父類的屬性,再加載子類的屬性。