Java概述(J2SE入門1)

來源:互聯網
上載者:User

為了準備2個星期後的軟體大賽,放下手中喜歡的事,靜下下來好好複習下J2SE吧!

1、Java概述
java語言是解釋執行,java源碼是通過編譯產生一種特殊的.class的中間字解碼檔案,然後再有JVM進行解釋執行。
java語言對指標進行了上層的封裝,它保證能夠通過這個指標(引用)來訪問有效記憶體單元。
java語言不允許多繼承,使繼承關係成樹裝圖,每個類都只能由一個父類。
java語言的開發效率高,但執行效率低。(實際上也沒低多少...)
java的記憶體回收機制,在java中new的對象不需要向c++一樣進行delete操作,JVM會根據情況回收垃圾對象。(懶漢機制,等待資源沒有的時候才回收)我們只能夠建議JVM進行記憶體回收,例如(System.gc() RunTime.gc()這兩個方法就是建議JVM進行記憶體回收的方法)

JDK,java開發套件(類庫和運行命令),JRE,java運行環境,JVM,java虛擬機器(解釋執行的核心,對位元組碼進行翻譯成運行環境的機器碼,它可以屏蔽平台差異。JVM是不跨平台的。)
JAVA_HOME,指明JDK安裝的位置,CLASSPATH,指明類檔案的位置,PATH,指明命令的可執行檔的位置。

java源檔案的檔案名稱必須和檔案中定義public class的類名(大小寫頁要相同)相同。

java原始碼中的main方法的定義寫法。main方法是程式的入口。
public static void main(String[] args){
System.out.println("Hello world");
}
java源檔案也要先編譯,使用javac xxx.java格式的命令得來編譯,使用java xxx來運行。
定義包結構要放在有效代碼的第一行,package xxx.xxx,包的定義在一個程式中只能由一個,在加上包定義之後編譯可以使用javac -d 路徑 xxxx.java,這個-d這個命令列的參數可以指定包結構的位置“.”代表目前的目錄。在運行時要使用類的全名
java xxx.xxx.xxxx用包名以點分隔。運行時要在包結構的上一層目錄來運行。

java中的注釋
單行注釋 //......
多行注釋 /* .......*/
文檔注釋/** ........<p>(換列標籤)*/,用javadoc命令可以根據原碼中的文檔注釋產生注釋文檔(html格式)。文檔注釋中可以使用html標籤。
javadoc -d 路徑 (指定注釋文檔的儲存路徑)
文檔注釋一般寫在類定義之前,方法之前,屬性之前。
在文檔注釋中可以用 @author 表示程式的作者,@version 表示程式的版本,前兩個注釋符號要寫在類定義之前,用於方法的注釋@param 對參數進行注釋,@return 對傳回值進行注釋 @throws對拋出異常的注釋。

jar命令用於打一個xxx.jar檔案
用法:jar {ctxu}[vfm0Mi] [jar-檔案] [manifest-檔案] [-C 目錄] 檔案名稱 ...
選項:
    -c  建立新的存檔
    -t  列出存檔內容的列表
    -x  展開存檔中的命名的(或所有的〕檔案
    -u  更新已存在的存檔
    -v  產生詳細輸出到標準輸出上
    -f  指定封存檔案名
    -m  包含來自標明檔案的標明資訊
    -0  只儲存方式;未用ZIP壓縮格式
    -M  不產生所有項的清單(manifest〕檔案
    -i  為指定的jar檔案產生索引資訊
    -C  改變到指定的目錄,並且包含下列檔案:
如果一個檔案名稱是一個目錄,它將被遞迴處理。
清單(manifest〕檔案名稱和封存檔案名都需要被指定,按'm' 和 'f'標誌指定的相同順序

樣本1:將兩個class檔案存檔到一個名為 'classes.jar' 的封存檔案中:
       jar cvf classes.jar Foo.class Bar.class
樣本2:用一個存在的清單(manifest)檔案 'mymanifest' 將 foo/ 目錄下的所有
           檔案存檔到一個名為 'classes.jar' 的封存檔案中:
       jar cvfm classes.jar mymanifest -C foo/ 。
一般在使用使用jar cvf 檔案名稱.jar 檔案所在路徑(xxx/xxx/xxx.class)也可以壓縮一個目錄,只要在制定路徑是指定為檔案夾,jar命令的命令列參數在使用時可以以“-”開頭,也可以不用。
java程式的運行過程,首先是啟動java虛擬機器,然後就是去找.class檔案,先是從系統的類庫中找(系統之會在跟目錄下尋找,所以需要完整類名),如果找不到的話會去CLASSPATH所設定的目錄去找。然後載入到java虛擬機器中。
系統會在每個java程式中隱含匯入了java.lang這個包,import 包名,匯入包中的類檔案。
java.lang包,這是一個基礎包。
java.util包,這個包是工具類的包。
java.io包,這個包是用於輸入輸出操作的
java.net包,這個包是用於網路編程。
java.awt,java.swing,javax.swing,java.event等包用於圖形編程用的包。
applaction java的應用程式,java應用程式中必須有一個main()方法。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.