1. 程式人生 > >成員變數,靜態變數,靜態塊,靜態方法執行順序

成員變數,靜態變數,靜態塊,靜態方法執行順序

測試案例一

/**
 * @author 歡迎加入Java技術交流群:646766275
 *
 */
public class Test {

    static int x = 10;
    static {x += 5;}
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("x=" + x);
    }

    static {x /= 3;}

}

main方法執行結果:
x=5

測試案例二

/**
 * @author 歡迎加入Java技術交流群:646766275
 *
 */
public class HelloA {
    public HelloA() {
        System.out.println("HelloA");
    }
    {System.out.println("I'm A class");}
    static {System.out.println("static A");};
}
/**
 * @author 歡迎加入Java技術交流群:646766275
 *
 */
public
class HelloB extends HelloA { public HelloB() { System.out.println("HelloB"); } {System.out.println("I'm B class");} static {System.out.println("static B");} /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub
System.out.println("-main"); new HelloB(); new HelloB(); } }

main方法執行結果:
static A
static B
-main
I’m A class
HelloA
I’m B class
HelloB
I’m A class
HelloA
I’m B class
HelloB