Java基礎——對main方法的理解

1. 對main方法的理解

public static void main(String[ ] args) 爲Java程序的入口。

public: 權限修飾符,表明任何類或對象都可以訪問。

static:“靜態”,表明main方法是一個靜態方法,方法中的代碼存儲在靜態存儲區,只要類被加載後,就可以使用該方法而不需要通過實例化對象來訪問,可以直接通過類名.main()直接訪問。

void: 返回值爲空。

main: Java識別的特殊方法名,是程序的入口方法。

String[] args:字符串數組,參數args爲開發人員在命令行狀態下輸入參數。

JVM運行時按照上述方法簽名來查找方法的入口。必須有public 和 static修飾,返回值爲空,方法的參數爲字符串數組,方法名爲main。若能找到,就執行。找不到,則報錯。

2.main方法是否還有其它可用的定義格式?

(1)public和static沒有先後順序關係,因此以下定義也合理。

static public void main(String[ ] args)

(2)還可以把main方法定義爲final

public static final void main(String[ ] args)

(3)還可以用synchronized修飾main方法

public static synchronized void main(String[ ] args)

由於main()方法爲程序的入口方法,不能用abstract關鍵字修飾

 

3. 同一個.java文件中是否可以有多個main()方法?

雖然每個類中都可以定義main()方法,但只有與文件名相同用public修飾的類中的main()方法才能作爲整個程序的入口方法。

 

4.main()方法一定是程序運行時第一個被執行的模塊嗎?

答案:否

靜態塊在類被加載時就會被調用,而main()方法是類被加載後程序運行的入口,只不過mian()方法是靜態方法,不用通過實例化對象來訪問。

示例:

public class Test{
	static
	{
		System.out.println("Hello World1");
	}
	
	public static void main(String[] args)
	{
		System.out.println("Hello World2");
	}	
}

輸出結果:

Hello World1

Hello World2

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章