main方法中窺世界

 

          今天咱們來看一個編程語言入門必演示的HelloWorld程序,藉此來展現咱們的重點知識。話很少說,先看代碼。java

 

 

            本段代碼在eclipse中編輯運行,怎麼在eclipse中新建項目呢:點擊左上角File選擇New一個Project.雖然本例僅僅實現了一個簡單的輸出HelloWorld一行字符串的簡單功能,可是萬丈高樓平地起,一個工程所須要的東西它都有。目錄結構以下:編程

 

 

             src文件夾中包含有多個包,包裏有java源代碼文件。爲何要分這麼多層呢?主要便於文件組織和管理。把不一樣類型的文件放在不一樣的包裏,這樣便於查找分類。數組

 

             當你引用別人的類庫時,可能會有不少的文件,這時候不是一個文件一個文件導入的,而是把這些文件所在的包導入工程中,方便編程。微信

 

             同時不一樣的包能夠定義不一樣的訪問權限。主要的就是本身包中類可不能夠被別的包裏的類訪問,以及本身包中類與類之間的訪問權限等。框架

 

             另外一個文件JRE System Library中包含了運行程序所須要的環境源文件,爲工程運行提供支持。到之後創建更復雜的工程時,常會使用一些框架。這些時候也會導入一些外部類庫,俗稱lib庫。eclipse

 

             接下來咱們重點分析例子源代碼,記筆記記筆記!編程語言

 

 

               第一行表示文件所在包,第二行public class Sample_01.這裏定義了一個訪問權限爲public的類Sample_01.這裏就能夠和上面所述的聯繫起來了。對於類來講,只有public和默認修飾(即不寫)。函數

 

               public修飾的類能夠被別的包訪問,默認的類只能被本包中的類訪問。之後碰到內部類的時候能夠用private修飾,固然這是後話了,你只要知道如今寫的源代碼文件類是外部類。學習

 

               爲啥外部類不能用private或者protected來修飾呢?這也是一個頗有意思的問題哦。若是一個類寫成了private的,那麼它就不能夠被別的類調用了,只能本身玩本身的。那你項目裏要這麼個玩意有啥用,跟別的類都沒有互動。this

 

               而protected表示的是受保護的,不能被外部的類從新實例化和調用,因此也不能用來修飾外部類。

 

 

               第三行寫了一個方法,方法名叫main,參數爲String[] args,方法爲void類型即沒有返回值,static表示靜態的,並且是public的。學習一門新的語言的第一個程序,都是用來演示語言特性的。

 

              也就是說,是很簡單的程序,可是展現出了語言的基本框架。哦,那我知道了。之後寫JAVA程序,這個main方法必不可少。對不對?對的。

 

               main方法是程序的惟一入口,無論你寫多少的代碼,main方法必須寫並且 只有一個。並且格式是固定的,不能夠改!!!必須寫成public static void main(String[] args){}.

 

               static方法通常稱做靜態方法,因爲靜態方法不依賴於任何對象就能夠進行訪問,所以對於靜態方法來講,是沒有this的,由於它不依附於任何對象,既然都沒有對象,就談不上this了。

 

               而且因爲這個特性,在靜態方法中不能訪問類的非靜態成員變量和非靜態成員方法,由於非靜態成員方法、變量都是必須依賴具體的對象纔可以被調用。

 

               那爲何函數類型是void呢?那是由於因爲main方法是程序的入口,在程序棧中處於最底層,沒有哪一個方法可以接受main方法的返回值。

 

               對於函數的參數,必須使用字符串數組String[],變量名隨意,但通常都寫args即arguments的縮寫。因爲參數是數組,因此你能夠寫成String[] args,也能夠寫成String args[]均可以。

 

              不過二者的意義稍有區別。前者聲明瞭一個字符串數組類型,後者則是一個字符串類型,但這個字符串類型的變量自己是數組。

 

              有了這個參數咱們能夠經過命令行對main方法進行傳參,固然eclipse也能夠作,只不過最本質的仍是經過命令行。能夠本身試一試哦。

 

             第四行輸出了一句話HelloWorld.這裏out是一種流對象,表示輸出。print後面加ln表示打印換行。後面還會詳細介紹IO對象,具體的咱們就留到之後再說。

 

             因爲小編水平有限,若有不足,還請不吝賜教!!!此處也是重點,記下記下。微信搜索關注油墨山公衆號,獲取更多文章諮詢!!!

 

◆◆油墨未乾,爲什麼停下雙手!◆◆

 

相關文章
相關標籤/搜索