Java程序設(shè)計(jì)與應(yīng)用 課件【ch01】Java概述_第1頁(yè)
Java程序設(shè)計(jì)與應(yīng)用 課件【ch01】Java概述_第2頁(yè)
Java程序設(shè)計(jì)與應(yīng)用 課件【ch01】Java概述_第3頁(yè)
Java程序設(shè)計(jì)與應(yīng)用 課件【ch01】Java概述_第4頁(yè)
Java程序設(shè)計(jì)與應(yīng)用 課件【ch01】Java概述_第5頁(yè)
已閱讀5頁(yè),還剩36頁(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概述第一章Java程序設(shè)計(jì)與應(yīng)用新工科建設(shè)之路·計(jì)算機(jī)類(lèi)規(guī)劃教材01Java的產(chǎn)生與發(fā)展PARTONEJava的產(chǎn)生與發(fā)展Java是SUN公司推出的Java程序設(shè)計(jì)語(yǔ)言和Java平臺(tái)的總稱(chēng)。Java起初目標(biāo)定位為家用電器等小型設(shè)備的程序語(yǔ)言。20世紀(jì)90年代,隨著互聯(lián)網(wǎng)的發(fā)展,Java作為一種可以編寫(xiě)跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言而迅猛發(fā)展起來(lái),現(xiàn)在已經(jīng)逐漸成為重要的網(wǎng)絡(luò)編程語(yǔ)言。Java的產(chǎn)生與發(fā)展Java具有卓越的通用性、平臺(tái)移植性和安全性。目前廣泛應(yīng)用于Web開(kāi)發(fā)、大數(shù)據(jù)開(kāi)發(fā)、Android開(kāi)發(fā)及各種后端開(kāi)發(fā)中。針對(duì)不同的市場(chǎng),Java可以劃分為三個(gè)技術(shù)平臺(tái)。分別是JavaSE、JavaEE和JavaME。Java的產(chǎn)生與發(fā)展01JavaSE(JavaStandardEdition)標(biāo)準(zhǔn)版主要用于桌面應(yīng)用軟件的編程。包含構(gòu)成Java核心的類(lèi)、輸入和輸出、網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)編程以及用戶(hù)界面編程等,它是3個(gè)平臺(tái)的核心部分。03JavaME(JavaMicroEdition)微型版用于嵌入式設(shè)備和小型數(shù)字電子設(shè)備的開(kāi)發(fā),如手機(jī)、機(jī)頂盒等。JavaME只支持Java標(biāo)準(zhǔn)規(guī)范中核心類(lèi)函數(shù)庫(kù)的子集,并加入一些支持嵌入式習(xí)題的擴(kuò)展類(lèi)。02JavaEE(JavaEnterpriseEdition)企業(yè)版主要用于分布式的網(wǎng)絡(luò)程序開(kāi)發(fā)。02Java的特點(diǎn)PARTTWOJava的特點(diǎn)01簡(jiǎn)單性Java對(duì)硬件的要求不高,在小型的計(jì)算機(jī)上也可以良好地運(yùn)行。02面向?qū)ο笮訨ava是一種純粹的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,并且提供了類(lèi)、接口和繼承等原語(yǔ)。所有的Java程序和Applet程序均是對(duì)象,封裝性實(shí)現(xiàn)了模塊化和信息隱藏,繼承性實(shí)現(xiàn)了代碼的復(fù)用,用戶(hù)可以建立自己的類(lèi)庫(kù)。Java釆用了C語(yǔ)言中的大部分語(yǔ)法,熟悉C語(yǔ)言的程序員會(huì)發(fā)現(xiàn)Java在語(yǔ)法上與C語(yǔ)言極其相似。Java的特點(diǎn)03魯棒性Java在編譯及運(yùn)行程序時(shí),都要進(jìn)行嚴(yán)格的檢査。作為一種強(qiáng)制類(lèi)型語(yǔ)言,Java在編譯和鏈接時(shí)都要進(jìn)行大量的類(lèi)型檢査,防止發(fā)生不匹配問(wèn)題。無(wú)用內(nèi)存自動(dòng)回收機(jī)制也提高了Java的魯棒性。Java的特點(diǎn)04安全性Java在運(yùn)行應(yīng)用程序時(shí),嚴(yán)格檢查其訪問(wèn)數(shù)據(jù)的權(quán)限。字節(jié)代碼在其被執(zhí)行前要經(jīng)過(guò)一個(gè)核實(shí)工具,字節(jié)代碼被核實(shí)后,便由Java解釋器來(lái)執(zhí)行,該解釋器通過(guò)阻止對(duì)內(nèi)存的直接訪問(wèn)來(lái)進(jìn)一步提高Java的安全性。05跨平臺(tái)性為使Java程序能在網(wǎng)絡(luò)的任何地方運(yùn)行,Java編譯器編譯生成了與體系結(jié)構(gòu)無(wú)關(guān)的字節(jié)碼結(jié)構(gòu)文件格式。使用Java編寫(xiě)的應(yīng)用程序可以運(yùn)行在各種平臺(tái)上。03JVM虛擬機(jī)PARTTHREEJVM虛擬機(jī)用Java編寫(xiě)的應(yīng)用程序在不同的系統(tǒng)平臺(tái)上都可以運(yùn)行,是因?yàn)镴ava有一個(gè)自己獨(dú)立的能解析Java軟件的解析器,稱(chēng)為虛擬機(jī),即JVM(JavaVirtualMachine,Java虛擬機(jī))。它是在真實(shí)的機(jī)器上用軟件模擬實(shí)現(xiàn)的一種虛擬機(jī)器,為軟件的運(yùn)行提供一個(gè)平臺(tái),由JVM來(lái)負(fù)責(zé)Java程序在該系統(tǒng)中的運(yùn)行,這樣就實(shí)現(xiàn)了Java程序的跨平臺(tái)性。JVM虛擬機(jī)Java應(yīng)用程序的編譯、解釋和運(yùn)行的工作流程如圖1-1所示。04垃圾回收機(jī)制PARTFOUR垃圾回收機(jī)制Java的一個(gè)顯著特點(diǎn)就是引入了垃圾回收機(jī)制,自動(dòng)垃圾回收是一種在堆內(nèi)存中找出哪些對(duì)象在被使用,還有哪些對(duì)象沒(méi)被使用,并且將后者刪掉的機(jī)制。在使用C++時(shí),程序員需要自己進(jìn)行內(nèi)存管理,手動(dòng)分配和釋放內(nèi)存。而Java不一樣,它有垃圾回收器,能自動(dòng)釋放內(nèi)存空間,減輕程序員的負(fù)擔(dān)。垃圾回收機(jī)制Java虛擬機(jī)的垃圾回收站在兩種情況下進(jìn)行工作。一種情況是在Java虛擬機(jī)運(yùn)行空閑時(shí),通過(guò)檢查內(nèi)存的引用次數(shù),如果某個(gè)對(duì)象已經(jīng)不存在任何引用,那么就進(jìn)行垃圾回收,釋放空間。另一種情況是在系統(tǒng)內(nèi)存空間不足時(shí),進(jìn)行垃圾回收,釋放空間。Java的垃圾回收機(jī)制是自動(dòng)進(jìn)行的,不需要程序員進(jìn)行干涉。05Java開(kāi)發(fā)環(huán)境PARTFIVEJava開(kāi)發(fā)環(huán)境什么是JDKSUN公司提供了一套Java開(kāi)發(fā)環(huán)境,簡(jiǎn)稱(chēng)JDK(JavaDevelopmentKit),它包括Java語(yǔ)言編譯器、Java字節(jié)碼解釋器、Java打包工具等。除JDK外,還有一種JRE(JavaRuntimeEnvironment)工具,它是Java的運(yùn)行環(huán)境,只包含Java運(yùn)行工具,不包含Java編譯工具。Java開(kāi)發(fā)環(huán)境JDK的安裝設(shè)置(1)下載JDK安裝文件進(jìn)入Oracle官方網(wǎng)站,下載JDK安裝文件,如圖1-2所示。Java開(kāi)發(fā)環(huán)境(2)安裝JDK雙擊exe文件,進(jìn)入JDK安裝界面,如圖1-3所示。單擊“下一步”按鈕,進(jìn)入JDK自定義安裝界面,如圖1-4所示。Java開(kāi)發(fā)環(huán)境(3)設(shè)置JDK如果需要在命令行或者用記事本等軟件編寫(xiě)運(yùn)行Java程序,需要手工配置一些Windows的環(huán)境變量,如果用Eclipse等工具軟件編寫(xiě)運(yùn)行Java程序,則可以不用配置Windows的環(huán)境變量。需要設(shè)置的環(huán)境變量有JAVA_HOME、classpath和path。Java開(kāi)發(fā)環(huán)境01JAVA_HOME用于指明JDK的安裝目錄。03classpath指明Java運(yùn)行時(shí)需要加載的類(lèi)的路徑。02path指明Java運(yùn)行時(shí)需要加載的類(lèi)的路徑。Java開(kāi)發(fā)環(huán)境JDK目錄介紹JDK安裝完成后,會(huì)在硬盤(pán)上生成一個(gè)目錄,該目錄稱(chēng)為JDK安裝目錄,接下來(lái)對(duì)JDK安裝目錄的內(nèi)容進(jìn)行介紹。bin:該目錄存放一些編譯器和工具,常用的有Javac.exe(Java編譯器)、Java.exe(Java運(yùn)行工具)、jar.exe(打包工具)、jdb.exe(查錯(cuò)工具)和Javadoc.exe(文檔生成工具)等。Java開(kāi)發(fā)環(huán)境db該目錄下包含安裝JDK時(shí)附帶安裝的小型數(shù)據(jù)庫(kù)JavaDB。從JDK6.0開(kāi)始,Java新增成員JavaDB,這是一個(gè)純Java實(shí)現(xiàn)、開(kāi)源的數(shù)據(jù)庫(kù)管理系統(tǒng),其支持JDBC4.0所有的規(guī)范,因此使用Java的程序員不再需要耗費(fèi)大量精力安裝和配置數(shù)據(jù)庫(kù),可直接使用JavaDB。include:由于JDK是通過(guò)C語(yǔ)言和C++實(shí)現(xiàn)的,因此在啟動(dòng)時(shí)需要引入一些頭文件,該目錄是存放C語(yǔ)言的頭文件。Java開(kāi)發(fā)環(huán)境jre:此目錄是存放Java運(yùn)行環(huán)境的根目錄,它包含Java虛擬機(jī)、運(yùn)行時(shí)的類(lèi)包、Java應(yīng)用啟動(dòng)器及一個(gè)bin目錄。lib:lib是library的簡(jiǎn)寫(xiě),存放Java類(lèi)庫(kù)或庫(kù)文件。src.zip:該壓縮文件里存放的是Java所有核心類(lèi)庫(kù)的源代碼。06第一個(gè)Java程序PARTSIX第一個(gè)Java程序命令行方式(1)編寫(xiě)源代碼打開(kāi)記事本編輯器,輸入如下程序:將文件命名為HelloJava.java,保存為文本文件格式文件,注意文件名的大小寫(xiě),將文件保存在D:\work文件夾下。第一個(gè)Java程序(2)編譯字節(jié)碼在控制臺(tái)界面進(jìn)入D:\work文件夾,輸入編譯器文件名和要編譯的源程序文件名,對(duì)源文件進(jìn)行編譯,如圖1-7所示。執(zhí)行命令后,在D:\work文件夾下生成一個(gè)字節(jié)碼文件“HelloJava.class”。第一個(gè)Java程序(3)運(yùn)行Java程序在控制臺(tái)窗口輸入“JavaHelloJava”命令,運(yùn)行編譯好的字節(jié)碼文件,運(yùn)行結(jié)果如圖1-8所示。第1行“publicclassHelioJava表示建立一個(gè)公共的類(lèi),類(lèi)名為“HelloJava”,Java規(guī)定定義類(lèi)必須使用關(guān)鍵字class,public表示定義的這個(gè)類(lèi)“HelloJava”是公共的,代表該類(lèi)的訪問(wèn)權(quán)限是公有的。第一個(gè)Java程序由于是公共的類(lèi),因此要求文件名“HelloJava.java”與類(lèi)名必須相同,包括大小寫(xiě)一致。第3行是一個(gè)main()方法,同C語(yǔ)言一樣,是一個(gè)程序主方法,也是入口方法。第5行“System.out.println()”的作用是在控制臺(tái)輸出字符串“Hello,welcome!”。第一個(gè)Java程序使用Eclipse集成開(kāi)發(fā)環(huán)境Eclipse是一個(gè)開(kāi)源的、基于Java的可擴(kuò)展開(kāi)發(fā)平臺(tái)。它可以作為Java的集成開(kāi)發(fā)環(huán)境(IDE),也可以作為其他開(kāi)發(fā)語(yǔ)言的集成開(kāi)發(fā)環(huán)境,如C、C++、PHP和Python等。(1)創(chuàng)建Java項(xiàng)目運(yùn)行Eclipse,選擇菜單File—New一JavaProject,出現(xiàn)NewJavaProject對(duì)話框。第一個(gè)Java程序在“ProjectName”中輸入項(xiàng)目的名稱(chēng),這里輸入“HelloWorld”,其余選項(xiàng)保持默認(rèn),單擊“Finish”按鈕完成項(xiàng)目的創(chuàng)建。這時(shí),在PackageExplorer視圖中會(huì)出現(xiàn)一個(gè)名稱(chēng)為HelloWorld的Java項(xiàng)目,如圖1-10所示。第一個(gè)Java程序(2)創(chuàng)建Java類(lèi)右擊項(xiàng)目名稱(chēng),選擇New—Class會(huì)出現(xiàn)一個(gè)NewJavaClass對(duì)話框,如圖1-11所示。第一個(gè)Java程序在“Name”文本框中輸入“HelloWorld”作為類(lèi)名,在Package中輸入“example”作為包名。勾選“publicstaticvoidmain(String[]args)”,單擊“Finish”按鈕,Eclipse自動(dòng)生成代碼框架,如圖1-12所示。第一個(gè)Java程序(3)編寫(xiě)程序代碼在文本編輯器中完成代碼的編寫(xiě),在main方法內(nèi)部寫(xiě)一條輸出語(yǔ)句。(4)運(yùn)行程序可以在PackageExplorer視圖中快速運(yùn)行Java程序,右擊Java類(lèi)HelloWorld,在右鍵菜單中選擇RunAs>JavaApplication。07Java編程規(guī)范PARTSEVENJava編程規(guī)范在編寫(xiě)Java程序時(shí),需要遵循一定的書(shū)寫(xiě)和命名規(guī)則,以提高代碼的可讀性。提高系統(tǒng)的魯棒性、穩(wěn)定性和可靠性,這也在一定程度上體現(xiàn)出程序員的水平。Java編程規(guī)范01包名包名是全小寫(xiě)的名詞,中間可以由“.”分隔開(kāi),如Java.awt.event。03接口名命名規(guī)則與類(lèi)名相同,如interfaceCollection。02類(lèi)名首字母大寫(xiě),通常由多個(gè)單詞合成一個(gè)類(lèi)名,要求每個(gè)單詞的首字母要大寫(xiě),如classHelloWorldApp。Java編程規(guī)范01方法名往往由多個(gè)單詞合成,第一個(gè)單詞通常為動(dòng)詞,首字母小寫(xiě),中間的每個(gè)單詞的首字母都要大寫(xiě),如balanceAccount和isButtonPressed。03常量名基本數(shù)據(jù)類(lèi)型的常量名為全大寫(xiě),如果是由多個(gè)單詞構(gòu)成的常量名,可以用下畫(huà)線隔開(kāi),如intYEAR和intWEEK_OF_MONTH。如果是對(duì)象類(lèi)型的常量,則采用大小寫(xiě)混合,由大寫(xiě)字母把單詞隔開(kāi)。02變量名全小寫(xiě),一般為名詞,如length。08上機(jī)實(shí)驗(yàn)PARTEIGHT上機(jī)實(shí)驗(yàn)0102實(shí)驗(yàn)?zāi)康模?)掌握下

溫馨提示

  • 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)論