類(含父類)定義初始化過程
阿新 • • 發佈:2019-02-09
原始碼:
package org.phn.reusingclass;
/**
* Created by Pan on 2016/10/8.
*/
public class Bath {
private String s0;
private String s1 = "s1";//5
private static String s2 = "s2";//1
private String s3="s3";//6
private String s4;
public Bath(){//8
System.out.println("new Bath()");
}
public Bath(String s){
System.out.println("new Bath('"+s+"')");
}
static{//2
System.out.println("static block");
}
{//7
System.out.println("block");
}
public static void main(String[] args) {
BathSon b = new BathSon();
}
}
class BathSon extends Bath {
private static String ss1 = "s1";//3
private String ss2="s2";//9
public BathSon(){//11
System.out.println("new BathSon()");
}
static{//4
System.out.println("son static block");
}
{//10
System.out.println("son block");
}
}
可以試著執行一下程式碼
改動一下static成員變數和static程式碼塊的位置
改動一下普通成員變數和普通程式碼塊
這裡多設定斷點,來看執行的過程。
下圖只是簡單的說明了一下,還有很多細節需要深思。
歡迎一起討論交流