package xu.jin;
class insect
static
static int print(string str)
static int x1=print("static insect");}
class hello extends insect
static
public static void main(string args)
}
output:12
3456
78910
1112
1314
15 3
4static insect
static hello
3344
hello i12
insect2
hello j
1122
hello2
hello world
首先載入類,再初始化。想想也知道肯定先載入基類,再子類,初始化也是,子類是在基類基礎上進行新增,肯定先要初始化基類再子類。 先初始化static的變數,在執行main()方法之前就需要進行載入。再執行main方法,如果new乙個物件,則先對這個物件類的基本成員變數進行初始化(非方法),包括構造**塊,這兩種是按照編寫順序按序執行的,再呼叫建構函式。 關於繼承的初始化機制,首先執行含有main方法的類,觀察到hello類含有基類insect,即先載入insect類的static變數,再載入hello類的static變數。載入完static變數之後,呼叫main()方法,new hello則先初始化基類的基本變數和構造**塊,再呼叫基類的構造方法。然後再初始化子類hello的基本變數和構造**塊,再執行子類的建構函式。
java基礎 繼承關係類載入順序問題
created by fei on 2017 5 31.public class sonclass extends parentclass static public static void main string args class parentclass static 執行結果 parentc...
java類載入順序
1 父類靜態成員和靜態初始化塊,按在 中出現的順序依次執行。2 子類靜態成員和靜態初始化塊,按在 中出現的順序依次執行。3 父類例項成員和例項初始化塊,按在 中出現的順序依次執行。4 執行父類構造方法。5 子類例項成員和例項初始化塊,按在 中出現的順序依次執行。6 執行子類構造方法。下面提供了有關靜...
java類載入順序
package com.demo description 類載入順序 author fujianyong 2015 2 6上午11 21 37 public class classloadersequence public static void test1 public void test2 pu...