静态实例初始化要点

    技术2024-07-09  64

    1、静态实例初始化只进行一次

    2、静态实例初始化只有在必要时刻进行(如果1和2都注释掉,静态实例初始化不会进行)

     

    例:

    //: ExplicitStatic.java    // Explicit static initialization    // with the "static" clause.       class Cup {     Cup(int marker) {       System.out.println("Cup(" + marker + ")");     }     void f(int marker) {       System.out.println("f(" + marker + ")");     }   }      class Cups {     static Cup c1;     static Cup c2;     static {       c1 = new Cup(1);       c2 = new Cup(2);     }     Cups() {       System.out.println("Cups()");     }   }      public class ExplicitStatic {     public static void main(String[] args) {       System.out.println("Inside main()");       Cups.c1.f(99);  // (1)      }     static Cups x = new Cups();  // (2)      static Cups y = new Cups();  // (2)     } ///:~

     

     

    最新回复(0)