1. 程式人生 > >JAVA基礎-子類繼承父類例項化物件過程

JAVA基礎-子類繼承父類例項化物件過程

class Parent {
    // 靜態變數
    public static String p_StaticField = "父類--靜態變數";
    // 變數(其實這用物件更好能體同這一點,如專門寫一個類的例項)
  
    //如果這個變數放在初始化塊的後面,是會報錯的,因為你根本沒有被初始化
    public String p_Field = "父類--變數";
    // 靜態初始化塊
    static {
        System.out.println(p_StaticField);
        System.out.println("父類--靜態初始化塊");
    }
    // 初始化塊
    {
        System.out.println(p_Field);
        System.out.println("父類--初始化塊");
    }
    // 構造器
    public Parent() {
        System.out.println("父類--構造器");
    }
}
public class SubClass extends Parent {
    // 靜態變數
    public static String s_StaticField = "子類--靜態變數";
    // 變數
    public String s_Field = "子類--變數";
    // 靜態初始化塊
    static {
        System.out.println(s_StaticField);
        System.out.println("子類--靜態初始化塊");
    }
    // 初始化塊
    {
        System.out.println(s_Field);
        System.out.println("子類--初始化塊");
    }
    // 構造器
    public SubClass() {
        //super();
        System.out.println("子類--構造器");
    }
    // 程式入口
    public static void main(String[] args) {
        System.out.println("*************in main***************");
        new SubClass();
        System.out.println("*************second subClass***************");
        new SubClass();
    }
}