解讀main()方法中的String[] args


我們剛開始學習java時會被要求記住主方法(main)的方法,就像這樣:

 

1 public static void main(String[] args){ }   
2 public static void main(String args[]){ }

 

public static void main(String[] args)為Java程序的入口方法,JVM在運行程序的時候,會首先查找main方法。其中,public是權限修飾符,表明任何類或對象都可以訪問這個方法,static表明main方法是一個靜態方法,即方法中的代碼是存儲在靜態存儲區的,只要類被加載后,就可以使用該方法而不需要通過實例化對象來訪問,可以直接通過類名.main()直接訪問,JVM在啟動的時候就是按照上述方法的簽名(必須有public與static修飾,返回值為void,且方法的參數為字符串數組)來查找方法的入口地址,如果能找到就執行,找不到則會報錯。void表明方法沒有返回值,main是JVM識別的特殊方法名,是程序的入口方法。字符串數組參數args為開發人員在命令行狀態下與程序交互提供了一種手段。

因為main為程序的入口方法,因此當程序運行的時候,第一個執行的方法就是main方法。通常來講,要執行一個類的方法,首先必須實例化一個類的對象,然后通過對象來調用這個方法。但是由於main是程序的入口方法,此時還沒有實例化對象,因此在編寫main方法的時候就要求不需要實例化對象就可以調用這個方法,鑒於此,main方法需要被定義成public與static。下例給出了在調用main方法時傳遞參數的方法。

1 public class Example1{
2        public static void main(String[] args){
3               for(int i=0;i<args.length;i++){
4                      System.out.println(args[i]);
5               }
6        }
7 }

在控制台下,使用javac Example1.java指令編譯上述程序,使用java Example1 arg1 arg2 arg3指令運行程序,程序輸出結果如下所示:

所以在命令行中使用String[ ] args即傳入參數的使用為java  類名   【參數1】 【參數2】 【參數3】 .。。。

在Eclipse中使用String[] args:

Run  →Run Configurations

出現以下窗口,切換到(x)=Arguments窗口,輸入參數

最后結果如圖:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM