Java 靜態代碼塊和Main函數的執行順序:
- public class C {
- static {
- System.out.println("111");
- }
-
- public static void main(String[] args) {
- System.out.println("222");
- }
- }
這個代碼輸出什麼?
“111”,“222”
- public class C {
-
- public static void main(String[] args) {
- System.out.println("222");
- }
-
- static {
- System.out.println("111");
- }
- }
這個代碼呢?
還是“111”,“222”!
由此可以知道什麼?靜態初始化域不管順序如何都會在main函數執行之前執行!