版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Java基本語法第1章學(xué)習(xí)目標(biāo):了解Java語言產(chǎn)生的歷史和工作原理,以及Java語言的發(fā)展Java語法機(jī)制概述,掌握J(rèn)ava程序的結(jié)構(gòu)、編程規(guī)范掌握J(rèn)ava的運行系統(tǒng)基本原理與Java虛擬機(jī)(JVM)的作用了解Java程序開發(fā)的工具,并掌握安裝Java開發(fā)環(huán)境的方法第1章Java基本語法本章主要介紹了Java語言的發(fā)展歷史、主要特點、Java平臺家族,以及Java程序開發(fā)基礎(chǔ)環(huán)境(即JDK和集成開發(fā)環(huán)境)。通過本章學(xué)習(xí),讀者將對Java語言的基本原理,語法結(jié)構(gòu)與編程方法有一定的了解,能夠簡單地編輯、調(diào)試和運行Java程序代碼。1.1Java的起源與發(fā)展一、Java的起源
二、Java的發(fā)展一、Java的起源
1991年,美國SunMicrosystems公司的某個研究小組為了能夠在消費電子產(chǎn)品上開發(fā)應(yīng)用程序,積極尋找合適的編程語言。消費電子產(chǎn)品種類繁多,包括PDA、機(jī)頂盒、手機(jī)等,即使是同一類消費電子產(chǎn)品所采用的處理芯片和操作系統(tǒng)也不相同,存在著跨平臺的問題。當(dāng)時最流行的編程語言是C和C++語言,Sun公司的研究人員就考慮是否可以采用C++語言來編寫消費電子產(chǎn)品的應(yīng)用程序,但是研究表明,對于消費電子產(chǎn)品而言,C++語言過于復(fù)雜和龐大,并不適用,安全性也并不令人滿意。于是,BillJoy先生領(lǐng)導(dǎo)的研究小組就著手設(shè)計和開發(fā)出一種語言,稱之為Oak。該語言采用了許多C語言的語法,提高了安全性,并且是面向?qū)ο蟮恼Z言,但是Oak語言在商業(yè)上并未獲得成功。時間轉(zhuǎn)到了1995年,互聯(lián)網(wǎng)在世界上蓬勃發(fā)展,Sun公司發(fā)現(xiàn)Oak語言所具有的跨平臺、面向?qū)ο?、安全性高等特點非常符合互聯(lián)網(wǎng)的需要,于是改進(jìn)了該語言的設(shè)計,要達(dá)到如下幾個目標(biāo):
(1)創(chuàng)建一種面向?qū)ο蟮某绦蛟O(shè)計語言,而不是面向過程的語言;
(2)提供一個解釋執(zhí)行的程序運行環(huán)境,是程序代碼獨立于平臺;
(3)吸收C和C++的優(yōu)點,使程序員容易掌握;
(4)去掉C和C++中影響程序健壯性的部分,使程序更安全,例如指針、內(nèi)存申請和釋放;
(5)實現(xiàn)多線程,使得程序能夠同時執(zhí)行多個任務(wù);
(6)提供動態(tài)下載程序代碼的機(jī)制;
(7)提供代碼校驗機(jī)制以保證安全性。最終,Sun公司給該語言取名為Java語言,造就了一代成功的編程語言。
二、Java的發(fā)展
1995年,美國SunMicrosystems公司正式向IT業(yè)界推出了Java語言,該語言具有安全、跨平臺、面向?qū)ο蟆⒑唵?、適用于網(wǎng)絡(luò)等顯著特點,當(dāng)時以Web為主要形式的互聯(lián)網(wǎng)正在迅猛發(fā)展,Java語言的出現(xiàn)迅速引起所有程序員和軟件公司的極大關(guān)注,程序員們紛紛嘗試用Java語言編寫網(wǎng)絡(luò)應(yīng)用程序,并利用網(wǎng)絡(luò)把程序發(fā)布到世界各地進(jìn)行運行,包括IBM、Oracle、微軟、Netscape、Apple、SGI等大公司紛紛與SunMicrosystems公司簽訂合同,授權(quán)使用Java平臺技術(shù)。微軟公司總裁比爾·蓋茨先生在經(jīng)過研究后認(rèn)為:“Java語言是長時間以來最卓越的程序設(shè)計語言”。目前,Java語言已經(jīng)成為最流行的網(wǎng)絡(luò)編程語言,許多大學(xué)紛紛開設(shè)Java課程,Java正逐步成為世界上程序員最多的編程語言。在經(jīng)歷了以大型機(jī)為代表的集中計算模式和以PC為代表的分散計算模式之后,互聯(lián)網(wǎng)的出現(xiàn)使得計算模式進(jìn)入了網(wǎng)絡(luò)計算時代。網(wǎng)絡(luò)計算模式的一個特點是計算機(jī)是異構(gòu)的,即計算機(jī)的類型和操作系統(tǒng)是不一樣的,例如SUN工作站的硬件是SPARC體系,軟件是UNIX中的Solaris操作系統(tǒng),而PC的硬件是INTEL體系,操作系統(tǒng)是Windows或者是Linux,因此相應(yīng)的編程語言基本上只是適用于單機(jī)系統(tǒng),例如COBOL、FORTRAN、C、C++等;網(wǎng)絡(luò)計算模式的另一個特點是代碼可以通過網(wǎng)絡(luò)在各種計算機(jī)上進(jìn)行遷移,這就迫切需要一種跨平臺的編程語言,使得用它編寫的程序能夠在網(wǎng)絡(luò)中的各種計算機(jī)上能夠正常運行,Java就是在這種需求下應(yīng)運而生的。正是因為Java語言符合了互聯(lián)網(wǎng)時代的發(fā)展要求,才使它獲得了巨大的成功。1.2什么是Java技術(shù)
Java技術(shù),簡而言之就是一種獨立于操作系統(tǒng)平臺的編程語言與開發(fā)平臺。1.3Java的語法機(jī)制概述一、Java源程序的組成部分二、源文件的命名規(guī)則三、其他命名約定一、Java源程序的組成部分package語句;//該部分至多只有一句,必須放在源程序的第一句import語句;//該部分可以有若干import語句或者沒有,必須放在所有的類定義之前publicclassDefinition;//公共類定義部分,至多只有一個公共類的定義//Java語言規(guī)定該Java源程序的文件名必須與該公共類名完全一致classDefinition;//類定義部分,可以有0個或者多個類定義interfaceDefinition;//接口定義部分,可以有0個或者多個接口定義二、源文件的命名規(guī)則如果在源程序中包含有公共類的定義,則該源文件名必須與該公共類的名字完全一致,字母的大小寫都必須一樣。這是Java語言的一個嚴(yán)格的規(guī)定,如果不遵守,在編譯時就會出錯。因此,在一個Java源程序中至多只能有一個公共類的定義。如果源程序中不包含公共類的定義,則該文件名可以任意取名。如果在一個源程序中有多個類定義,則在編譯時將為每個類生成一個.class文件。三、其他命名約定包名:包名是全小寫的單詞,中間由“.”分隔開,例如:Java.awt.event;類名:首字母大寫,通常由多個單詞合成一個類名,要求每個單詞的首字母也要大寫,如:HelloWorldApp;接口名:命名規(guī)則與類名相同,如:Collection;方法名:往往由多個單詞合成,第一個單詞通常為動詞,首字母小寫,中間的每個單詞的首字母都要大寫,如:balanceAccount、isButtonPressed;變量名:全小寫,一般為名詞,如:length;常量名:基本數(shù)據(jù)類型的常量名為全大寫,如果是由多個單詞構(gòu)成,可以用下劃線隔開,例如:YEAR,WEEK_OF_MONTH;如果是對象類型的常量,則是大小寫混合,由大寫字母把單詞隔開。
Java的運行系統(tǒng)是一個完整、有機(jī)的程序設(shè)計系統(tǒng),其功能主要由JVM、JDK以及開發(fā)平臺組成。1.4Java運行系統(tǒng)與JVM一、Java虛擬機(jī)——JVM二、JVM的組成三、垃圾自動回收機(jī)制四、代碼安全性檢查機(jī)制一、Java虛擬機(jī)——JVM
JVM(JavaVirtualMachine),Java虛擬機(jī),是軟件模擬的計算機(jī),可以在任何處理器上(無論是在計算機(jī)中還是在其他電子設(shè)備中)安全并且兼容的執(zhí)行保存在.class文件中的字節(jié)碼。Java虛擬機(jī)的“機(jī)器碼”保存在.class文件中,也可以稱之為字節(jié)碼文件。Java程序的跨平臺主要是指字節(jié)碼文件可以在任何具有Java虛擬機(jī)的計算機(jī)或者電子設(shè)備上運行,Java虛擬機(jī)中的Java解釋器負(fù)責(zé)將字節(jié)碼文件解釋成為特定的機(jī)器碼進(jìn)行運行。Java源程序需要通過編譯器編譯成為.class文件,Java程序的編譯和執(zhí)行過程如圖1-1所示圖1-1Java程序的編譯和執(zhí)行過程二、JVM的組成
JVM為下列各項做出了定義:指令集(相當(dāng)于中央處理器CPU)注冊集類文件格式棧垃圾收集堆存儲區(qū)三、垃圾自動回收機(jī)制
在程序的執(zhí)行過程中,部分內(nèi)存在使用過后就處于廢棄狀態(tài),如果不及時進(jìn)行無用內(nèi)存的回收,就會造成內(nèi)存泄漏,進(jìn)而導(dǎo)致系統(tǒng)崩潰。在C++語言中是由程序員進(jìn)行內(nèi)存回收的,程序員需要在編寫程序的時候把不再使用的對象內(nèi)存釋放掉;但是這種人為的管理內(nèi)存釋放的方法卻往往由于程序員的疏忽而致使內(nèi)存無法回收,同時也增加了程序員的工作量。而在Java運行環(huán)境中,始終存在著一個系統(tǒng)級的線程,專門跟蹤內(nèi)存的使用情況,定期檢測出不再使用的內(nèi)存,并進(jìn)行自動回收,避免了內(nèi)存的泄露,也減輕了程序員的工作量。四、代碼安全性檢查機(jī)制字節(jié)碼的執(zhí)行需要經(jīng)過三個步驟,首先由類裝載器(classloader)負(fù)責(zé)把類文件(.class文件)加載到Java虛擬機(jī)中,在此過程需要檢驗該類文件是否符合類文件規(guī)范;其次字節(jié)碼校驗器(bytecodeverifier)檢查該類文件的代碼中是否存在著某些非法操作,例如Applet程序中寫本機(jī)文件系統(tǒng)的操作;如果字節(jié)碼校驗器檢驗通過,由Java解釋器負(fù)責(zé)把該類文件解釋成為機(jī)器碼進(jìn)行執(zhí)行。Java虛擬機(jī)采用的是“沙箱”運行模式,即把Java程序的代碼和數(shù)據(jù)都限制在一定內(nèi)存空間里執(zhí)行,不允許程序訪問該內(nèi)存空間外的內(nèi)存,如果是Applet程序,還不允許訪問客戶端機(jī)器的文件系統(tǒng)。1.5.1JDK的安裝和配置1.5Java程序開發(fā)一、下載并安裝JDK二、認(rèn)識JDK三、配置JDK環(huán)境變量一、下載并安裝JDK
Java開發(fā)工具包(JavaDevelopmentKits,簡稱JDK)是Java應(yīng)用程序開發(fā)的基礎(chǔ)工具包,開發(fā)Java應(yīng)用程序首先必須下載JDK(JDK可以從Sun公司的官方網(wǎng)站上去下載)。下載完成后,雙擊圖標(biāo)進(jìn)行安裝,安裝過程中可以自定義安裝目錄等信息。例如我們可以選擇安裝目錄為D:\jdk1.5。二、認(rèn)識JDK在安裝完成后,可以發(fā)現(xiàn)在安裝目錄下具有如下文件夾,bin、include、jre、lib、sample、demo、src.zip等,其作用如表1-1所示:Binbin目錄提供了工具程序,包括Javac、Java、Javado等Jrejre目錄下的文件是JDK附帶的JRE資源包Liblib目錄下提供了Java工具所需要的資源文件DemoDemo目錄下提供了Java編寫的范例程序Src.zipSrc.zip目錄下提供了API類的源代碼壓縮文件表1-1JDK包的目錄及其作用三、配置JDK環(huán)境變量(1)右擊“我的電腦”,選擇“屬性”命令,如圖1-2所示:圖1-2配置JDK系統(tǒng)路徑1(2)切換到“高級”選項卡,單擊“環(huán)境變量”按鈕,如圖1-3所示:圖1-3配置JDK系統(tǒng)路徑2
(3)在“系統(tǒng)變量”中,設(shè)置3項屬性,Java_HOME、PATH、CLASSPATH(不區(qū)分大小寫),若已存在則點擊“編輯”按鈕,不存在則點擊“新建”按鈕,如圖1-4所示:圖1-4配置JDK系統(tǒng)路徑3
(4)Java_HOME指明JDK安裝路徑,就是剛才安裝時所選擇的路徑D:\jdk1.4,此路徑下包括lib,bin,jre等文件夾(此變量最好設(shè)置,因為以后運行tomcat,eclipse等都需要依靠此變量);Path使得系統(tǒng)可以在任何路徑下識別Java命令,設(shè)為:
%Java_HOME%\bin;%Java_HOME%\jre\binCLASSPATH為Java加載類(class或lib)路徑,只有類在classpath中,Java命令才能識別,設(shè)為:
.;%Java_HOME%\lib;%Java_HOME%\lib\tools.jar(要加“.”表示當(dāng)前路徑)%Java_HOME%就是引用前面指定的Java_HOME。圖1-5配置JDK系統(tǒng)路徑41.5.2Eclipse簡介一、Eclipse簡介二、下載并安裝Eclipse一、Eclipse簡介在實際應(yīng)用中,任何開發(fā)者都會選擇一個好的IDE(集成開發(fā)環(huán)境)。常用的Java的IDE主要有:JCreater,JBuilder,Eclipse等。其中Eclipse是一款非常優(yōu)秀的開源的IDE,基于Java的可擴(kuò)展平臺。現(xiàn)在Eclipse憑借其靈活的擴(kuò)展能力,優(yōu)良的性能與插件技術(shù),受到了越來越多的開發(fā)者的喜愛。盡管Eclipse是使用Java語言開發(fā)的,但它的用途并不限于Java語言。例如,支持諸如C/C++、COBOL和Eiffel等編程語言的插件已經(jīng)可用,或預(yù)計會推出。Eclipse框架還可用來作為與軟件開發(fā)無關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容管理系統(tǒng)?;贓clipse的應(yīng)用程序的突出例子是IBM的WebSphereStudioWorkbench,它構(gòu)成了IBMJava開發(fā)工具系列的基礎(chǔ)。例如,WebSphereStudioApplicationDeveloper添加了對JSP、Servlet、EJB、XML、Web服務(wù)和數(shù)據(jù)庫訪問的支持。二、下載并安裝Eclipse目前最新的版本是Eclipse3.2.2,下載地址為:
/downloads
點擊EclipseSDK3.22進(jìn)入下載頁面,下載面向Windows系列操作系統(tǒng)的最新版本Eclipse-SDK資源包。該資源包包括了適合于Windows平臺的Eclipse開發(fā)環(huán)境、Java開發(fā)環(huán)境、Plug-in開發(fā)環(huán)境、所有源代碼和文檔。如需下載面向其他平臺Eclipse-SDK或插件可點擊otherdownloadfor3.2.2,其他版本的資源包可點擊Allversions進(jìn)入下載頁面下載。下載完成后將其解壓。
Eclipse是一個綠色軟件,無需安裝即可執(zhí)行。如需中文版的集成開發(fā)環(huán)境,可在Eclipse官方網(wǎng)站下載中文語言包NLpack1-eclipse-SDK-3.2.2-win32.zip。解壓后,分別將其features、plugins目錄下的文件復(fù)制到Eclipse安裝目錄下的features、plugins目錄中,重新啟動Eclipse即可。1.6任務(wù)1.1第一個Java程序一、任務(wù)引入Java程序分為JavaApplication(Java應(yīng)用程序)和JavaApplet(Java小應(yīng)用程序)兩種。怎樣在開發(fā)平臺上開發(fā)、編譯以及運行Java程序呢?下面讓我們開始編寫第一個Java應(yīng)用程序。二、任務(wù)目標(biāo)掌握編寫、編譯、運行Java程序的基本方法。三、任務(wù)內(nèi)容
編寫一個Java應(yīng)用程序,它能夠利用來自Java標(biāo)準(zhǔn)庫的System對象的多種方法,打印出與當(dāng)前運行的系統(tǒng)有關(guān)的資料。其中“//”代表一種注釋方式,表示從這個符號開始到這行結(jié)束的所有內(nèi)容都是注釋。在每個程序文件的開頭,如果這個文件的代碼中用到了系統(tǒng)所提供的額外的類,就必須放置一個import語句。說它是額外的是因為一個特殊的類庫“Java.lang.*”會自動導(dǎo)入到每個Java文件。/*源程序文件名:Ex0101.Java*/importJava.util.Date;importJava.util.Properties;publicclassEx0101
{//創(chuàng)建公共類,名為Ex0101
publicstaticvoidmain(String
args[]){
System.out.println(newDate()); Propertiesp=System.getProperties(); p.list(System.out); System.out.println("---MemoryUsage:"); Runtimert=Runtime.getRuntime(); System.out.println("TotalMemory="+rt.totalMemory() //打印總內(nèi)存大小
+"FreeMemory="+rt.freeMemory()); //打印空閑內(nèi)存大小
}}四、程序清單五、運行結(jié)果圖1-6Ex0101.Java的運行結(jié)果該任務(wù)的主要目的是使大家對Java的編程結(jié)構(gòu)有一個總體認(rèn)識,在Java中所有的東西都是對象,程序就是由一大堆對象組合而成的,同時每個對象又屬于某個類,所有的代碼都是在某一個類中完成的。六、任務(wù)小結(jié)通過本章的學(xué)習(xí),大家已經(jīng)可以閱讀一些簡單的Java程序了。
Java語言的產(chǎn)生源于SunMicrosystems公司為消費電子產(chǎn)品上應(yīng)用程序的開發(fā)尋找一門編程語言的過程中,而隨著互聯(lián)網(wǎng)時代的到來,原有的Oak軟件就順理成章的改造成Java語言推向了市場,其跨平臺、面向?qū)ο?、安全等特點使其得到廣泛的應(yīng)用。通過在不同的軟硬件上實現(xiàn)的Java虛擬機(jī),Java
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋁合金供應(yīng)鏈合作協(xié)議
- 醫(yī)療器械銷售代表聘用協(xié)議
- 環(huán)衛(wèi)工程塔吊司機(jī)聘用協(xié)議
- 醫(yī)師雇傭合同延長期
- 專業(yè)房產(chǎn)中介合同模版
- 森林公園房產(chǎn)買賣合同樣本
- 商業(yè)裝修防火封堵施工協(xié)議
- 港口木地板安裝合同
- 交通樞紐租賃合同格式
- 生態(tài)外墻綠化施工協(xié)議
- 過敏性紫癜-教學(xué)課件
- GB/T 18344-2016汽車維護(hù)、檢測、診斷技術(shù)規(guī)范
- 神態(tài)描寫課件
- 醫(yī)惠內(nèi)鏡消毒質(zhì)量追溯系統(tǒng)
- 如何提高基層干部群眾工作能力課件
- 風(fēng)險分級管控與隱患排查治理雙重預(yù)防體系建設(shè)資料匯編
- 2022年讀者出版集團(tuán)有限公司招聘筆試試題及答案解析
- NB∕T 33009-2021 電動汽車充換電設(shè)施建設(shè)技術(shù)導(dǎo)則
- 大學(xué)《傳播學(xué)概論》試卷及答案
- 工程設(shè)計費收費標(biāo)準(zhǔn)
- -堅定目標(biāo)贏在執(zhí)行 主題班會課件
評論
0/150
提交評論