靜態的代碼與構造函數
阿新 • • 發佈:2017-06-23
ram ati () spa style generate div out 入口
public class ccc
{
public ccc()
{
System.out.println("ccc");
} /** * @param args */ static { System.out.println("static one is running"); } public static void main(String[] args) { // TODO Auto-generated method stub
System.out.println("main one is running");
A a = new A();
//a.main(args);
}
}
class A
{
static { System.out.println("static is running"); } public static void main(String[] args) { System.out.println("main A is running");
}
public A() {
System.out.println("A is running");
}
}
/* 這說明靜態的代碼塊是最優先運行的,然後是構造函數,而main函數是不會在不是選擇入口main函數的時候主動運行的。 如需要調用的話那麽必須顯示執行a.main(args); public 中,main函數先執行,其所在的類因為沒有創建對象,構造函數不會調用 在創健對象時,該對象對應的類的靜態函數先調用,然後是對象的構造函數,main函數不主動調用
*/
System.out.println("ccc");
} /** * @param args */ static { System.out.println("static one is running"); } public static void main(String[] args) { // TODO Auto-generated method stub
static { System.out.println("static is running"); } public static void main(String[] args) { System.out.println("main A is running");
/* 這說明靜態的代碼塊是最優先運行的,然後是構造函數,而main函數是不會在不是選擇入口main函數的時候主動運行的。 如需要調用的話那麽必須顯示執行a.main(args); public 中,main函數先執行,其所在的類因為沒有創建對象,構造函數不會調用 在創健對象時,該對象對應的類的靜態函數先調用,然後是對象的構造函數,main函數不主動調用
*/
靜態的代碼與構造函數