第一章java程序設(shè)計(jì)概述_第1頁(yè)
第一章java程序設(shè)計(jì)概述_第2頁(yè)
第一章java程序設(shè)計(jì)概述_第3頁(yè)
第一章java程序設(shè)計(jì)概述_第4頁(yè)
第一章java程序設(shè)計(jì)概述_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Java語(yǔ)言程序設(shè)計(jì)軟件學(xué)院劉偉QQ:2797974556151022011年2月第一章Java程序設(shè)計(jì)概述1.1機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言1.2Java語(yǔ)言概述1.3Java平臺(tái)和主要應(yīng)用方向1.4Java的垃圾回收與代碼安全檢查機(jī)制1.5典型的Java開(kāi)發(fā)環(huán)境1.6Java編程示例1.7反編譯工具的介紹1.8JavaJDK6新功能介紹1.1機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的種類(lèi)非常多,總的可以分成機(jī)器語(yǔ)言,匯編語(yǔ)言,高級(jí)語(yǔ)言三大類(lèi)。機(jī)器語(yǔ)言是計(jì)算機(jī)唯一能接受和執(zhí)行的語(yǔ)言,與硬件緊密相連。機(jī)器語(yǔ)言由二進(jìn)制碼組成,每個(gè)二進(jìn)制碼是一條指令。匯編語(yǔ)言是面向機(jī)器的程序設(shè)計(jì)語(yǔ)言。用匯編語(yǔ)言編寫(xiě)的程序叫匯編語(yǔ)言源程序,計(jì)算機(jī)無(wú)法執(zhí)行。必須用匯編程序把它翻譯成機(jī)器語(yǔ)言目標(biāo)程序,計(jì)算機(jī)才能執(zhí)行。這個(gè)翻譯過(guò)程稱(chēng)為匯編過(guò)程。匯編語(yǔ)言的長(zhǎng)處在于編寫(xiě)高效且需要對(duì)機(jī)器硬件精確控制的程序。匯編語(yǔ)言中,用助記符代替操作碼,用地址符號(hào)(Symbol)或標(biāo)號(hào)(Label)代替地址碼。這樣用符號(hào)代替機(jī)器語(yǔ)言的二進(jìn)制碼,就把機(jī)器語(yǔ)言變成了匯編語(yǔ)言。因此匯編語(yǔ)言亦稱(chēng)為符號(hào)語(yǔ)言。機(jī)器語(yǔ)言和匯編語(yǔ)言都是面向機(jī)器的,高級(jí)語(yǔ)言是面向用戶(hù)的。由于匯編語(yǔ)言依賴(lài)于硬件體系,且助記符量大難記,于是人們又發(fā)明了更加易用的所謂高級(jí)語(yǔ)言。用高級(jí)語(yǔ)言編寫(xiě)的程序叫做高級(jí)語(yǔ)言源程序,必須翻譯成機(jī)器語(yǔ)言目標(biāo)程序才能被計(jì)算機(jī)執(zhí)行。高級(jí)語(yǔ)言的翻譯有兩種方式:編譯方式和解釋方式。編譯方式:先由編譯程序把高級(jí)語(yǔ)言源程序翻譯成目標(biāo)程序,執(zhí)行時(shí)運(yùn)行目標(biāo)程序。現(xiàn)在大多數(shù)的編程語(yǔ)言都是編譯型的,例如VisualC++、VisualFoxpro、Delphi等。解釋方式:在運(yùn)行高級(jí)語(yǔ)言源程序時(shí),由解釋程序?qū)υ闯绦蜻叿g邊執(zhí)行。經(jīng)典的Basic語(yǔ)言就是以解釋方式運(yùn)行的。學(xué)習(xí)方法1,端正態(tài)度,樹(shù)立信心2,勤奮(多看,多練,多問(wèn),多想)期末卷面成績(jī)?yōu)?00分,占總成績(jī)的50%;實(shí)驗(yàn)成績(jī)、平時(shí)成績(jī)可根據(jù)平時(shí)作業(yè)和考勤等綜合評(píng)定,占總成績(jī)的50%。1.2Java概述

1.2.1Java語(yǔ)言的產(chǎn)生Java是1995年6月由Sun公司引進(jìn)到我們這個(gè)世界的革命性的編程語(yǔ)言.1990年Sun公司成立了由JamesGosling領(lǐng)導(dǎo)的開(kāi)發(fā)小組,開(kāi)始致力于開(kāi)發(fā)一種可移植的、跨平臺(tái)的語(yǔ)言,該語(yǔ)言能生成正確運(yùn)行于各種操作系統(tǒng)、各種CPU芯片上的代碼。他們的精心專(zhuān)研和努力促成了Java語(yǔ)言的誕生。Java語(yǔ)言是一門(mén)很優(yōu)秀的語(yǔ)言,具有面向?qū)ο蟆⑴c平臺(tái)無(wú)關(guān)、安全、穩(wěn)定和多線程等優(yōu)良特性,是目前軟件設(shè)計(jì)中極為健壯的編程語(yǔ)言。Java語(yǔ)言的出現(xiàn)是源于對(duì)獨(dú)立于平臺(tái)語(yǔ)言的需要,即這種語(yǔ)言編寫(xiě)的程序不會(huì)因?yàn)樾酒淖兓l(fā)生無(wú)法運(yùn)行或出現(xiàn)運(yùn)行錯(cuò)誤。目前,隨著網(wǎng)絡(luò)的迅速發(fā)展,Java語(yǔ)言的優(yōu)勢(shì)越顯明顯,Java已經(jīng)成為網(wǎng)絡(luò)時(shí)代一門(mén)非常重要的語(yǔ)言。1.2.2Java語(yǔ)言的發(fā)展微軟公司總裁比爾.蓋茨先生認(rèn)為,“Java語(yǔ)言是長(zhǎng)時(shí)間以來(lái)最卓越的程序設(shè)計(jì)語(yǔ)言”。Java語(yǔ)言已經(jīng)成為目前最流行的網(wǎng)絡(luò)編程語(yǔ)言,到2005年,我國(guó)對(duì)Java技術(shù)人員的需求量將高達(dá)20萬(wàn)余人,許多大學(xué)紛紛開(kāi)設(shè)Java課程,Java正逐步成為世界上程序員最多的編程語(yǔ)言。1.2.3Java虛擬機(jī)及Java的跨平臺(tái)原理Java虛擬機(jī)(JavaVirtualMachine)簡(jiǎn)稱(chēng)JVM,Java虛擬機(jī)是一個(gè)想象中的機(jī)器,在實(shí)際的計(jì)算機(jī)上通過(guò)軟件模擬來(lái)實(shí)現(xiàn)。Java虛擬機(jī)有自己想象中的硬件,如處理器、堆棧、寄存器等,還具有相應(yīng)的指令系統(tǒng)。Java語(yǔ)言的一個(gè)非常重要的特點(diǎn)就是與平臺(tái)的無(wú)關(guān)性。而使用Java虛擬機(jī)是實(shí)現(xiàn)這一特點(diǎn)的關(guān)鍵。JVM是平臺(tái)有關(guān)的。1.2.4Java語(yǔ)言的關(guān)鍵特點(diǎn)簡(jiǎn)單性平臺(tái)無(wú)關(guān)性面向?qū)ο笮园踩苑植际蕉嗑€程動(dòng)態(tài)性1.3Java平臺(tái)和主要應(yīng)用方向某種意義上來(lái)說(shuō),Java不僅是編程語(yǔ)言,還是一個(gè)開(kāi)發(fā)平臺(tái)。兩種主要的“發(fā)布環(huán)境”首先是Java運(yùn)行時(shí)環(huán)境(javaruntimeenvironment,簡(jiǎn)稱(chēng)JRE)包含了完整的類(lèi)文件包;其次,許多主要的瀏覽器都提供了Java解釋器和運(yùn)行時(shí)環(huán)境。Java技術(shù)的平臺(tái)架構(gòu)包括以下三個(gè)方面J2EE(Java2EnterpriseEdtion)—用于服務(wù)器,構(gòu)建可擴(kuò)展的企業(yè)級(jí)Java平臺(tái)。J2SE(Java2StandardEdition)—用于工作站、PC機(jī),為桌面開(kāi)發(fā)和低端商務(wù)應(yīng)用提供了Java標(biāo)準(zhǔn)平臺(tái)。J2ME(Java2MicroEdtion)—嵌入式Java消費(fèi)電子平臺(tái),適用于消費(fèi)性電子產(chǎn)品和嵌入式設(shè)備。1.4Java的垃圾回收與代碼安全檢查機(jī)制在Java程序的執(zhí)行過(guò)程中,部分內(nèi)存在使用過(guò)后就處于廢棄狀態(tài),如果不及時(shí)進(jìn)行無(wú)用內(nèi)存的回收,內(nèi)存會(huì)越占越多,導(dǎo)致內(nèi)存泄漏,進(jìn)而導(dǎo)致系統(tǒng)崩潰。在C++語(yǔ)言中是由程序員人為進(jìn)行內(nèi)存回收的,程序員需要在編寫(xiě)程序的時(shí)候把不再使用的對(duì)象內(nèi)存釋放掉;但是這種人為的管理內(nèi)存釋放的方法卻往往由于程序員的疏忽而致使內(nèi)存無(wú)法回收,同時(shí)也增加了程序員的工作量。在Java運(yùn)行環(huán)境中,始終存在著一個(gè)系統(tǒng)級(jí)的線程,專(zhuān)門(mén)跟蹤內(nèi)存的使用情況,定期檢測(cè)出不再使用的內(nèi)存,并進(jìn)行自動(dòng)回收,避免了內(nèi)存的泄露,也減輕了程序員的工作量。不足:影響Java的執(zhí)行效率。字節(jié)碼的執(zhí)行需要經(jīng)過(guò)三個(gè)步驟1)首先由類(lèi)裝載器(classloader)負(fù)責(zé)把類(lèi)文件(.class文件)加載到Java虛擬機(jī)中,在此過(guò)程需要檢驗(yàn)該類(lèi)文件是否符合類(lèi)文件規(guī)范;2)其次字節(jié)碼校驗(yàn)器(bytecodeverifier)檢查該類(lèi)文件的代碼中是否存在著某些非法操作,例如Applet程序中寫(xiě)本機(jī)文件系統(tǒng)的操作;3)如果字節(jié)碼校驗(yàn)器檢驗(yàn)通過(guò),由Java解釋器負(fù)責(zé)把該類(lèi)文件解釋成為機(jī)器碼進(jìn)行執(zhí)行。1.5典型的Java開(kāi)發(fā)環(huán)境Sun公司為全世界使用Java進(jìn)行開(kāi)發(fā)的人員提供了一套免費(fèi)的開(kāi)發(fā)工具集,取名為JDK(JavaDevelopersKits),它不僅是Java的開(kāi)發(fā)平臺(tái),也是Java的運(yùn)行平臺(tái)。

1.5.1下載、安裝和了解JDK1.下載地址

2.安裝JDK

3.了解JDKJDK安裝完畢后,在安裝路徑下有以下幾個(gè)文件夾。bin文件夾:存放編程所要用到的開(kāi)發(fā)工具,包括編譯器、解釋執(zhí)行程序、小應(yīng)用程序?yàn)g覽器、調(diào)試器、文檔生成工具、反編譯器等。demo文件夾:存放演示程序,開(kāi)發(fā)者可以從中學(xué)習(xí)如何使用Java的類(lèi)庫(kù)。include文件夾:存放本地文件(Nativemeans)。jre文件夾:Java運(yùn)行時(shí)環(huán)境的根目錄,存放JVM所需的各種文件。lib文件夾:存放庫(kù)文件。sample文件夾:類(lèi)似于demo文件夾,也是存放Java的源程序,該程序多數(shù)和網(wǎng)絡(luò)相關(guān)。和一般的Windows程序不同,JDK安裝成功后,不會(huì)在“開(kāi)始”菜單和桌面生成快捷方式。這是因?yàn)閎in文件夾下面的可執(zhí)行程序都不是圖形界面的,它們必須在控制臺(tái)中以命令行方式運(yùn)行。另外,還需要用戶(hù)手工配置一些環(huán)境變量才能正常使用JDK。按照運(yùn)行的操作系統(tǒng)進(jìn)行劃分,JDK分別有forWindows、forLinux、forSolaris和forMacOS等不同版本。1.5.2設(shè)置path與classpath安裝好并不是能立即運(yùn)行編寫(xiě)Java程序,還需要設(shè)置JDK的相關(guān)路徑。1.設(shè)置path雖然我們知道JDK的工具程序bin目錄下,但操作系統(tǒng)并不知道它的準(zhǔn)確路徑。我們就必須要告訴操作系統(tǒng),應(yīng)該到哪些目錄下嘗試找到我們所想要使用的工具程序。右鍵單擊“我的電腦”選擇“屬性”,切換至“高級(jí)頁(yè)面”,并點(diǎn)擊下方的“環(huán)境變量按鈕“。在系統(tǒng)變量里進(jìn)行添加操作a.點(diǎn)擊“新建”,變量名:”JAVA_HOME”,變量值“C:\ProgramFiles\Java\jdk1.5.0”。b.找到名叫“path”的變量,點(diǎn)擊“編輯”,在變量值后面添加“;%JAVA_HOME%\jre\bin;%JAVA_HOME%\bin;”點(diǎn)擊“確定”。操作系統(tǒng)會(huì)嘗試在指定的path變量中尋找指定的工具程序,當(dāng)輸入javac命令時(shí),由于path變量中有設(shè)置JDK的bin目錄的路徑,操作系統(tǒng)就可以根據(jù)這個(gè)信息來(lái)找到j(luò)avac工具程序。2.設(shè)置classpath設(shè)置classpath的目的是讓Java執(zhí)行環(huán)境在哪些目錄下可以找到指定的Java程序(也就是.class文件)。在系統(tǒng)變量下單擊“新建”,變量名:”classpath”,變量值“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;”。第一個(gè)字符”.”不能省略(用來(lái)表示當(dāng)前工具目錄),每一個(gè)路徑名之間用”;”作為分割。3.測(cè)試環(huán)境變量寫(xiě)一個(gè)簡(jiǎn)單的Java程序,測(cè)試一下環(huán)境設(shè)置是否正確【例1-1】一個(gè)簡(jiǎn)單的Java程序。publicclassHelloWorld{publicstaticvoidmain(Stringargv[]){ System.out.println("你好!我的第一個(gè)Java程序!");}}注意:1.Java的源文件必須以擴(kuò)展名.java結(jié)束;2.Java主文件名與類(lèi)名稱(chēng)必須一致,區(qū)分大小寫(xiě);3.Java程序的類(lèi)名稱(chēng)是指class關(guān)鍵詞后的名稱(chēng)。就這個(gè)例子而言,也就是HelloWorld,該名稱(chēng)必須與HelloWorld.java的主文件名(HelloWorld)一致。4.注意每個(gè)字母的大小寫(xiě),Java程序中會(huì)區(qū)分字母的大小寫(xiě),System與system對(duì)Java程序來(lái)說(shuō)是不一樣的名稱(chēng)。C:\>cdjava_work\1接著使用javac工具程序來(lái)編譯.java文件,命令如下:C:\java_work\1>javacHelloWorld.java如果編譯順利成功,則在HelloWorld.java所在的目錄,會(huì)出現(xiàn)一個(gè)HelloWorld.class文件,這是已經(jīng)編譯完成的Java字節(jié)碼文件。使用java工具程序來(lái)執(zhí)行它,執(zhí)行方式如下:C:\java_work\1>javaHelloWorldJava工具程序會(huì)根據(jù)指定的類(lèi)名稱(chēng),實(shí)際加載.class的文件,以上例來(lái)說(shuō),就是載入HelloWorld.class并執(zhí)行。Eclipse和MyEclipse1.Eclipse是什么?

Eclipse是一個(gè)開(kāi)放源代碼的、基于Java的可擴(kuò)展開(kāi)發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。幸運(yùn)的是,Eclipse附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括Java開(kāi)發(fā)工具(JavaDevelopmentTools,JDT)。雖然大多數(shù)用戶(hù)很樂(lè)于將Eclipse當(dāng)作JavaIDE來(lái)使用,但Eclipse的目標(biāo)不僅限于此。Eclipse還包括插件開(kāi)發(fā)環(huán)境(Plug-inDevelopmentEnvironment,PDE),這個(gè)組件主要針對(duì)希望擴(kuò)展Eclipse的軟件開(kāi)發(fā)人員,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論