普通方法、普通方法的初始化和普通初始化塊,三者相同嗎?
普通方法、普通方法的初始化和普通初始化塊,三者相同嗎?前面講的執(zhí)行順序:靜態(tài)初始化塊>普通初始化塊>構(gòu)造方法,那么是不是普通方法的執(zhí)行順序也大于構(gòu)造方法的執(zhí)行順序?如果是,在視頻中,為什么子類構(gòu)造方法先執(zhí)行,而子類繼承父類的普通方法“動物具有吃東西的能力”最后執(zhí)行?
普通方法、普通方法的初始化和普通初始化塊,三者相同嗎?前面講的執(zhí)行順序:靜態(tài)初始化塊>普通初始化塊>構(gòu)造方法,那么是不是普通方法的執(zhí)行順序也大于構(gòu)造方法的執(zhí)行順序?如果是,在視頻中,為什么子類構(gòu)造方法先執(zhí)行,而子類繼承父類的普通方法“動物具有吃東西的能力”最后執(zhí)行?
2016-04-16
舉報
2016-04-16
代碼執(zhí)行順序:static代碼塊--> 構(gòu)造方法 --> 普通方法
2016-04-16
(1) 在一個不存在繼承的類中:初始化static變量,執(zhí)行static初始化快-->初始化普通成員變量(如果有賦值語句),執(zhí)行普通初始化塊-->構(gòu)造方法
(2)在一個存在繼承的類中:初始化父類static成員變量,運行父類static初始化塊-->初始化子類static成員變量,運行子類static初始化塊-->初始化父類實例成員變量(如果有賦值語句),執(zhí)行父類普通初始化塊-->父類構(gòu)造方法-->初始化子類實例成員變量(如果有賦值語句)及普通初始化塊-->子類構(gòu)造方法。