[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程_第1頁
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程_第2頁
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程_第3頁
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程_第4頁
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、計(jì)算機(jī)軟件及應(yīng)用浙江工商JAVA課程計(jì)算機(jī)軟件及應(yīng)用浙江工商JAVA課程3 202X, Sun 成立成立Green小組,開發(fā)了小組,開發(fā)了Oak語言語言;一、一、JAVA的發(fā)展歷史的發(fā)展歷史 ,Oak與GreenOs、用戶接口模塊、硬件模塊、用戶接口模塊、硬件模塊 集成為Star Seven,成功表現(xiàn)高效的小程序代碼技術(shù), Green升級為 202X, First Person 解體,解體,Sun決定將決定將Oak與與3W相結(jié)合;相結(jié)合; 202X年秋年秋 , 的的 32位版本中支持位版本中支持Java ,James Gosling和Naughton 完成 Oak新版新版 與第一個基于基于Oa

2、k的應(yīng)用程序Web Runner。 Oak Java WebRunner HotJava HotJava成為成為首個支持Java的第二代瀏覽器4James Gosling5Java 2 Platform Java 2 Platform Standard Edition J2SE Java 2 Platform Enterprise Edition J2EE Java 2 Platform Micro Edition J2ME6Java 2 Platform7J 2 S E 以Web為中心的客戶端或服務(wù)器端的軟件開發(fā)以前稱為 ,目前最新版本 J2SE 的實(shí)現(xiàn): Java 2 Software D

3、evelopment Kit (J2SDK), Standard Edition + Java 2 Runtime Environment (J2RE), Standard Edition8J2ME針對消費(fèi)類的電子設(shè)備 如移動 、汽車導(dǎo)航系統(tǒng)等。語言精簡、運(yùn)行環(huán)境高度優(yōu)化。9J2EE 開發(fā)企業(yè)級和服務(wù)器端的應(yīng)用。J2SE +Enterprice JavaBeans(EJB) + Java Servlets API + Java Server Pages(JSP)10J2EE Application Model 11二、二、Java 技術(shù)技術(shù)Java是一種編程語言。是一種編程語言。Java又是一

4、種平臺。又是一種平臺。12Java編程語言編程語言13Java 平臺平臺14三、三、javajava概概 述述 JAVA的特征的特征 JAVA的語法機(jī)制的語法機(jī)制 JAVA運(yùn)行系統(tǒng)運(yùn)行系統(tǒng) JAVA應(yīng)用應(yīng)用 JAVA程序示例程序示例15JavaJava的特征的特征SunSun在在JAVAJAVA“白皮書白皮書”中指出:中指出: JAVA JAVA是一種是一種“簡單、面向?qū)ο蟆⒎植际?、解簡單、面向?qū)ο?、分布式、解釋型、健壯、安全、體系結(jié)構(gòu)中立、可移植、高釋型、健壯、安全、體系結(jié)構(gòu)中立、可移植、高性能和動態(tài)性能和動態(tài)”的編程語言的編程語言16對對C+進(jìn)行成功改造進(jìn)行成功改造 去掉指針,取消多重繼承

5、和運(yùn)算符重載去掉指針,取消多重繼承和運(yùn)算符重載 設(shè)立自動內(nèi)存回收設(shè)立自動內(nèi)存回收J(rèn)avaJava特征特征- -簡單性簡單性 語法和語義都比較單純,容易學(xué)習(xí)和使用語法和語義都比較單純,容易學(xué)習(xí)和使用提供大量功能豐富的可重用類庫簡化了提供大量功能豐富的可重用類庫簡化了 編程工作量編程工作量17JavaJava特征特征- -面向?qū)ο竺嫦驅(qū)ο?Java Java 是最純潔的面向?qū)ο笳Z言,對面向是最純潔的面向?qū)ο笳Z言,對面向?qū)ο蠓椒▽W(xué)的支持也最全面對象方法學(xué)的支持也最全面: :JAVAJAVA對象有模塊化性質(zhì)和信息隱藏能力,對象有模塊化性質(zhì)和信息隱藏能力, 滿足面向?qū)ο蟮姆庋b要求;滿足面向?qū)ο蟮姆庋b要求

6、;支持繼承;支持繼承;通過抽象類與接口通過抽象類與接口支持多態(tài)支持多態(tài)18JavaJava特征特征- -分布式分布式數(shù)據(jù)分布支持?jǐn)?shù)據(jù)分布支持 通過通過Java的的URL類可以訪問網(wǎng)上的各類信息類可以訪問網(wǎng)上的各類信息資源,訪問方式完全類似于本地文件系統(tǒng);資源,訪問方式完全類似于本地文件系統(tǒng);操作分布支持操作分布支持 通過在通過在3W頁面中的小應(yīng)用程序(頁面中的小應(yīng)用程序(Applet)將計(jì)將計(jì)算從服務(wù)器分布至客戶機(jī),避免網(wǎng)絡(luò)擁擠,提高算從服務(wù)器分布至客戶機(jī),避免網(wǎng)絡(luò)擁擠,提高系統(tǒng)效率系統(tǒng)效率。19JavaJava特征特征- -半編譯,半解釋半編譯,半解釋20JavaJava特征特征- -半編譯

7、,半解釋半編譯,半解釋編譯器編譯編譯器編譯JAVA源程序源程序字節(jié)碼字節(jié)碼解釋器解釋執(zhí)行解釋器解釋執(zhí)行優(yōu)點(diǎn)優(yōu)點(diǎn): 兼具編譯執(zhí)行的效率優(yōu)勢和解釋執(zhí)行的靈活性;兼具編譯執(zhí)行的效率優(yōu)勢和解釋執(zhí)行的靈活性; 提高了應(yīng)用程序的可移植性:源程序、中間代碼提高了應(yīng)用程序的可移植性:源程序、中間代碼21JavaJava特征特征- -可移植性可移植性.JAVA源程序源程序JAVA編譯器編譯器(Pentium).(SPARC)JAVA字節(jié)碼字節(jié)碼JAVA解釋器解釋器.(Pentium).(SPARC)22“一次編程,到處運(yùn)行一次編程,到處運(yùn)行”- WORA可移植性源于兩方面:可移植性源于兩方面: Java的半編譯

8、、半解釋的特征的半編譯、半解釋的特征 Java采用標(biāo)準(zhǔn)的獨(dú)立于硬件平臺的數(shù)據(jù)類型采用標(biāo)準(zhǔn)的獨(dú)立于硬件平臺的數(shù)據(jù)類型JavaJava特征特征- -可移植性可移植性23 字節(jié)碼驗(yàn)證字節(jié)碼驗(yàn)證 運(yùn)行系統(tǒng)引入字節(jié)碼驗(yàn)證器,其中包含簡單的運(yùn)行系統(tǒng)引入字節(jié)碼驗(yàn)證器,其中包含簡單的規(guī)則驗(yàn)證程序,以確保遵循下列規(guī)則:規(guī)則驗(yàn)證程序,以確保遵循下列規(guī)則:JavaJava特征特征- -安全性安全性 不存在偽造的指針;不存在偽造的指針; 未違反訪問權(quán)限;未違反訪問權(quán)限; 嚴(yán)格遵循對象訪問規(guī)范來訪問對象;嚴(yán)格遵循對象訪問規(guī)范來訪問對象; 合適的參數(shù)調(diào)用方法;合適的參數(shù)調(diào)用方法; 沒有棧溢出沒有棧溢出24Java特征特征

9、- 多線程多線程 JAVA在語言級嵌入對并發(fā)的支持功能,在語言級嵌入對并發(fā)的支持功能, 具體機(jī)制就是多線程。具體機(jī)制就是多線程。 25JavaJava特征特征- -動態(tài)特性動態(tài)特性 JAVA程序的基本組成單元程序的基本組成單元 類類 是是運(yùn)行時(shí)動態(tài)裝載運(yùn)行時(shí)動態(tài)裝載的的 使使JAVA可以動態(tài)地維護(hù)應(yīng)用系統(tǒng)及其支持類可以動態(tài)地維護(hù)應(yīng)用系統(tǒng)及其支持類之間的一致性。之間的一致性。26 Java編譯生成的字節(jié)碼與機(jī)器代碼十分接近。編譯生成的字節(jié)碼與機(jī)器代碼十分接近。提供即時(shí)編譯等措施。提供即時(shí)編譯等措施。JavaJava特征特征- -高性能高性能27JAVA的語法機(jī)制概述的語法機(jī)制概述與與C+一致的語

10、法機(jī)制:一致的語法機(jī)制: 數(shù)據(jù)類型、表達(dá)式、程序流控制、數(shù)據(jù)類型、表達(dá)式、程序流控制、 結(jié)構(gòu)化異常處理等結(jié)構(gòu)化異常處理等與與C+不同的語法機(jī)制:不同的語法機(jī)制: 類、類、接口接口(Interface)、程序包、程序包(Package)、 自動內(nèi)存回收、以及多線程自動內(nèi)存回收、以及多線程28JAVA與與C+不同的語法機(jī)制不同的語法機(jī)制類:類: 最重要、最基本的語法設(shè)施,類的定義與繼承與最重要、最基本的語法設(shè)施,類的定義與繼承與 C+類似,主要區(qū)別:類似,主要區(qū)別: JAVA不允許多重繼承,多重繼承必須通過接口實(shí)現(xiàn)。不允許多重繼承,多重繼承必須通過接口實(shí)現(xiàn)。 自動內(nèi)存回收自動內(nèi)存回收 JAVA取消

11、了指針類型,所有動態(tài)內(nèi)存請求均通過取消了指針類型,所有動態(tài)內(nèi)存請求均通過new運(yùn)算符,并運(yùn)算符,并且得到的不是指針而是引用。且得到的不是指針而是引用。 系統(tǒng)進(jìn)行內(nèi)存回收。系統(tǒng)進(jìn)行內(nèi)存回收。29JAVA運(yùn)行系統(tǒng)運(yùn)行系統(tǒng)運(yùn)行環(huán)境的種類:運(yùn)行環(huán)境的種類:JAVA Application - JAVA解釋器解釋器JAVA Applet- JAVA兼容的兼容的Web瀏覽器。瀏覽器。30JAVA運(yùn)行系統(tǒng)的構(gòu)成運(yùn)行系統(tǒng)的構(gòu)成類裝配器類裝配器字節(jié)碼驗(yàn)證器字節(jié)碼驗(yàn)證器解釋器解釋器代碼生成器代碼生成器運(yùn)行支持庫運(yùn)行支持庫31JAVA程序運(yùn)行過程程序運(yùn)行過程Javac網(wǎng)絡(luò)網(wǎng)絡(luò)類裝配器類裝配器字節(jié)碼驗(yàn)證器字節(jié)碼驗(yàn)證器

12、解釋器解釋器代碼生成器代碼生成器運(yùn)行支持庫運(yùn)行支持庫本地系統(tǒng)本地系統(tǒng)編譯編譯運(yùn)行運(yùn)行32JAVA虛擬機(jī)虛擬機(jī) JVM的意義:的意義: 保證不同平臺上的保證不同平臺上的JAVA運(yùn)行系統(tǒng)功能統(tǒng)一運(yùn)行系統(tǒng)功能統(tǒng)一 JVM的定義:的定義: An imaginary machine that is implemented by emulating it in software on a real machine. Code for the Java Virtual Machine is stored in .class files.33JVM規(guī)范定義了一組抽象的邏輯組件,包括:規(guī)范定義了一組抽象的邏輯組

13、件,包括:指令集;指令集;寄存器組:程序計(jì)數(shù)器、棧頂指針等;寄存器組:程序計(jì)數(shù)器、棧頂指針等;棧結(jié)構(gòu):保存各種參數(shù)等;棧結(jié)構(gòu):保存各種參數(shù)等;垃圾收集器;垃圾收集器;存儲區(qū):存放字節(jié)碼的方法代碼、符號表存儲區(qū):存放字節(jié)碼的方法代碼、符號表JVM組成部分組成部分34 JAVA運(yùn)行系統(tǒng)是各供應(yīng)商對運(yùn)行系統(tǒng)是各供應(yīng)商對JVM的具體實(shí)現(xiàn)。的具體實(shí)現(xiàn)。對運(yùn)行系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的要求:對運(yùn)行系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的要求: 必須支持必須支持SUN的的.class文件結(jié)構(gòu)文件結(jié)構(gòu) 必須支持字節(jié)碼定義必須支持字節(jié)碼定義 必須支持必須支持JVM規(guī)范規(guī)范使使Java運(yùn)行系統(tǒng)功能是統(tǒng)一的,運(yùn)行系統(tǒng)功能是統(tǒng)一的,并且只能執(zhí)行統(tǒng)

14、一格式的字節(jié)碼并且只能執(zhí)行統(tǒng)一格式的字節(jié)碼.JVM與與 JAVA運(yùn)行系統(tǒng)運(yùn)行系統(tǒng)35兩種應(yīng)用程序兩種應(yīng)用程序Java application: 編譯器編譯編譯器編譯運(yùn)行運(yùn)行Java applet: 編譯器編譯編譯器編譯 編寫編寫HTML文件把文件把Applet嵌入其中嵌入其中 瀏覽器中運(yùn)行瀏覽器中運(yùn)行類庫類庫API Java API是是SUN提供的用提供的用Java語言開發(fā)的類集合。語言開發(fā)的類集合。 Java API包括幾十個包,常用的有:包括幾十個包,常用的有:, , java.util, , 等。等。關(guān)鍵性術(shù)語關(guān)鍵性術(shù)語36Java核心類包舉例核心類包舉例 JAVA語言的核心類組成,包括了基本數(shù)據(jù)類型語言的核心類組成,包括了基本數(shù)據(jù)類型 和出錯處理方法等。和出錯處理方法等。 JAVA語言的標(biāo)準(zhǔn)語言的標(biāo)準(zhǔn)I/O庫庫 工具類,如工具類,如Date等。等。 J 實(shí)現(xiàn)網(wǎng)絡(luò)操作。實(shí)現(xiàn)網(wǎng)絡(luò)操作。 -(Abstract Window Toolkit)創(chuàng)建用戶界面。創(chuàng)建用戶界面。 Java.applet 支持支持Applet開發(fā)。開發(fā)。37Java應(yīng)用程序舉例應(yīng)用程序舉例:Public class HelloWorldApppublic static void main( St

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論