版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Advanced Network Programming,Ren Jiansirenjsv@cug.edu.cn,Java的發(fā)展歷史,1 Java的起源 Java是Sun公司1995年正式推出的新一代面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言, 特別適合于Internet應(yīng)用程序開(kāi)發(fā), 具有平臺(tái)無(wú)關(guān)性。 Java來(lái)自于1991年Sun公司的一個(gè)叫Green的項(xiàng)目, 其原先的目的是為家用消費(fèi)電子產(chǎn)品開(kāi)發(fā)一個(gè)分布式代碼系統(tǒng), 可以把E
2、-mail發(fā)給電冰箱、 電視機(jī)等家用電器, 對(duì)它們進(jìn)行控制。開(kāi)始, 準(zhǔn)備采用C++, 但C++太復(fù)雜, 安全性差, 最后基于C++開(kāi)發(fā)了一種新的語(yǔ)言O(shè)ak(Java的前身), Oak是一種用于網(wǎng)絡(luò)的精巧而安全的語(yǔ)言。 1994年下半年, Internet的快速發(fā)展, 促進(jìn)了Java語(yǔ)言研制的進(jìn)展, Green項(xiàng)目組成員用Java編制了HotJava 瀏覽器, 觸發(fā)了Java進(jìn)軍Internet,使得它逐漸成為Internet
3、上受歡迎的開(kāi)發(fā)與編程語(yǔ)言,現(xiàn)已發(fā)展成為一種重要的Internet平臺(tái)。,2 關(guān)于Java 的大事,Java風(fēng)云人物,Java著名產(chǎn)品,3 Java語(yǔ)言的特點(diǎn),簡(jiǎn)單易學(xué):1)風(fēng)格類似于C++, 基本語(yǔ)法與C語(yǔ)言類似;2)摒棄了C++中容易引發(fā)程序錯(cuò)誤的地方, 如指針和內(nèi)存管理; 3)提供了豐富的類庫(kù)。面向?qū)ο螅褐С朱o態(tài)和動(dòng)態(tài)風(fēng)格的代碼繼承及重用,是完全 面向?qū)ο蟮? 它不支持類似C語(yǔ)言那樣的面向過(guò)程 的程序設(shè)計(jì)技術(shù)。解釋執(zhí)行:
4、Java解釋器(運(yùn)行系統(tǒng))能直接運(yùn)行目標(biāo)代碼指令。平臺(tái)無(wú)關(guān):Java源程序被編譯成一種高層次的與機(jī)器無(wú)關(guān)的 byte-code格式語(yǔ)言, 被設(shè)計(jì)在Java虛擬機(jī)上運(yùn)行。,性能優(yōu)異:Java可以在運(yùn)行時(shí)直接將目標(biāo)代碼翻譯成機(jī)器指令, Sun用直接解釋器一秒鐘內(nèi)可調(diào)用300,000個(gè)過(guò)程, 翻譯目標(biāo)代碼的速度與C/C++的性能沒(méi)什么區(qū)別。 分布式:Java包括一個(gè)支持HTTP和FTP等基于TCP/IP協(xié)議的子庫(kù)。因此, Java應(yīng)用程
5、序可憑借URL打開(kāi)并訪問(wèn)網(wǎng)絡(luò)上的對(duì)象, 其訪問(wèn)方式與訪問(wèn)本地文件系統(tǒng)幾乎完全相同??梢浦玻篔ava應(yīng)用程序可以在配備了Java解釋器和運(yùn)行環(huán)境的任何計(jì)算機(jī) 系統(tǒng)上運(yùn)行, 通過(guò)定義獨(dú)立于平臺(tái)的基本數(shù)據(jù)類型及其運(yùn)算, Java數(shù)據(jù)得以在任何硬件平臺(tái)上保持一致。多線程:Java提供的多線程功能使得在一個(gè)程序里可同時(shí)執(zhí)行多個(gè)小任務(wù)。 多線程帶來(lái)的好處是可以有更好的 交互性能和實(shí)時(shí)控制性能。,健壯:Java致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤
6、。 類型檢查幫助檢查出許多開(kāi)發(fā)早期出現(xiàn)的錯(cuò)誤。 Java自已操縱內(nèi)存減少了內(nèi)存出錯(cuò)的可能性。 Java還實(shí)現(xiàn)了真數(shù)組, 避免了覆蓋數(shù)據(jù)的可能。安全:Java的安全性可從兩個(gè)方面得到保證。一方面, 在Java語(yǔ)言里, 象指針和釋放內(nèi)存等C++功能被刪除, 避免了非法內(nèi)存操作。 另一方面, 當(dāng)Java用來(lái)創(chuàng)建瀏覽器時(shí), 語(yǔ)言功能和一些瀏覽器本身提供的功能結(jié)
7、合起來(lái), 使它更安全。動(dòng)態(tài):Java的動(dòng)態(tài)特性是其面向?qū)ο笤O(shè)計(jì)方法的拓展, 它允許程序動(dòng)態(tài)地裝入運(yùn)行過(guò)程中所需要的類。,4 與Java語(yǔ)言相關(guān)的應(yīng)用Java Application ( Java應(yīng)用程序): 用Java語(yǔ)言編寫(xiě)的通過(guò)獨(dú)立的Java解釋器來(lái)解釋運(yùn)行的桌面應(yīng)用程序(類似于其它高級(jí)語(yǔ)言編制的應(yīng)用程序)。Java Applet (Java小程序): 用Java語(yǔ)言編寫(xiě)的、嵌入在HTML編寫(xiě)的Web頁(yè)
8、面中的非獨(dú)立程序,由Web瀏覽器內(nèi)部包含的Java解釋器來(lái)解釋運(yùn)行,是動(dòng)態(tài)、安全、跨平臺(tái)的網(wǎng)絡(luò)應(yīng)用程序。,JSP (JavaServer Pages, Java 服務(wù)器頁(yè)): 是一種實(shí)現(xiàn)普通靜態(tài)HTML和動(dòng)態(tài)HTML混合編碼的技術(shù),是在Sun公司倡導(dǎo)及多個(gè)公司參與下共同建立的一種動(dòng)態(tài)網(wǎng)頁(yè)標(biāo)準(zhǔn),實(shí)現(xiàn)了Web動(dòng)態(tài)內(nèi)容與其顯示的分離,用于構(gòu)建動(dòng)態(tài)Web網(wǎng)站,JSP文件運(yùn)行于服務(wù)器端,JSP的腳本語(yǔ)言是Java,其平臺(tái)無(wú)關(guān)性使得JSP一次
9、編寫(xiě),各處運(yùn)行。最新應(yīng)用——Java為用戶推出了游戲、天氣預(yù)報(bào)、地圖等一系列緊俏時(shí)髦的應(yīng)用,它能夠幫助汽車司機(jī)避免交通阻塞,還能讓公司對(duì)即將出行的銷售人員進(jìn)行跟蹤。目前在移動(dòng)通訊中被廣泛使用,如手機(jī)抓捕圖象、手機(jī)游戲等。,5 與Java相關(guān)的幾個(gè)常見(jiàn)名詞,Java EE—— Java Platform, Enterprise Edition (Java 企業(yè)版) Java EE首先是一種構(gòu)架,它包羅了Java的多種先進(jìn)的
10、技術(shù),最合適使用MVC的方法來(lái)構(gòu)建系統(tǒng),其表現(xiàn)層使用JSP,控制層可以使用Servlet或Session Bean,用于實(shí)現(xiàn)業(yè)務(wù)邏輯,Entity Bean則對(duì)業(yè)務(wù)實(shí)體進(jìn)行抽象。此外它還使用JAAS實(shí)現(xiàn)安全機(jī)制,JNDI用于查詢資源,JDBC和JTA訪問(wèn)數(shù)據(jù)庫(kù)和管理事務(wù);JMS實(shí)現(xiàn)企業(yè)的消息處理;JavaMail實(shí)現(xiàn)與企業(yè)外界的聯(lián)系。今年10月份將發(fā)布的最新版本為Java EE 5.0。,Java SE——Java Platform,
11、 Standard Edition (Java 標(biāo)準(zhǔn)版),是Java最核心的技術(shù)。Java ME——Java Platform, Micro Edition (Java 袖珍版), 是一個(gè)重要的用于無(wú)線方面的 Java 平臺(tái),它從可移植的、以網(wǎng)絡(luò)為中心的 Java 虛擬機(jī)轉(zhuǎn)變而來(lái)。JVM——Java Virtual Machine (Java虛擬機(jī)),它通過(guò)采用一種被稱之為Java虛擬機(jī)的虛擬微處理器的規(guī)范,用軟件在計(jì)算機(jī)芯
12、片內(nèi)模擬出一個(gè)假芯片,然后開(kāi)始運(yùn)行程序,為Java程序提供統(tǒng)一的脫離軟、硬件平臺(tái)的運(yùn)行環(huán)境。,JDK——Java Development Kit (Java開(kāi)發(fā)工具包),由Sun公司免費(fèi)發(fā)行的,JDK有多個(gè)版本,大體經(jīng)歷過(guò)1.02、1.1.x、1.2、1.3、1.4、1.5幾個(gè)系列。 JSDK——Java Server Development Kit (Java服務(wù)器開(kāi)發(fā)工具包),是JDK 的一個(gè)典型的擴(kuò)展工具包。JDBC——Jav
13、a DataBase Connectivity(Java數(shù)據(jù)庫(kù)連接),是一種用于執(zhí)行SQL語(yǔ)句的Java API(應(yīng)用程序接口),可以為多種關(guān)系數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn),是由一組用Java語(yǔ)言編寫(xiě)的類和接口組成。,Applet——Java Applet 是用 Java 語(yǔ)言編寫(xiě)的、包含在網(wǎng)頁(yè)里的“小 應(yīng)用程序”,通常被放在 Web 服務(wù)器上。當(dāng)有人上網(wǎng)瀏覽時(shí),Applet 隨網(wǎng)頁(yè)一起 下載到客戶端的瀏覽器中,并借助瀏覽器中的 Java 虛擬機(jī)
14、(JVM)運(yùn)行工作。 Servlet——Servlet是用Java編寫(xiě)的Server端程序,它與協(xié)議和平臺(tái)無(wú)關(guān)。Servlet運(yùn)行于Java-enabled Web Server中。Java Servlet可以動(dòng)態(tài)地?cái)U(kuò)展Server的能力,并采用請(qǐng)求-響應(yīng)模式提供Web服務(wù)。 Servlet與Jsp之間的交互為開(kāi)發(fā)Web服務(wù)提供了優(yōu)秀的解決方案。,Swing與 AWT(抽象窗口工具包)——是Java設(shè)計(jì) GUI (圖形用戶界面)的基礎(chǔ)
15、 。 AWT設(shè)計(jì)有嚴(yán)重缺陷,不能滿足發(fā)展的需要。 Swing是在AWT基礎(chǔ)上發(fā)展起來(lái)的,為Java GUI編程提供了強(qiáng)大豐富的API和靈活的結(jié)構(gòu)設(shè)計(jì),提供了替代AWT重量組件的輕量組件,Swing 中大部分是輕量級(jí)組件。Swing 幾乎無(wú)所不能,不但有各式各樣先進(jìn)的組件,而且更為美觀易用。二者最好不要混用。,EJB(Enterprise JavaBeans)—Java EE核心組件,EJB并不是一個(gè)產(chǎn)品。它是Jav
16、a服務(wù)器端服務(wù)框架的規(guī)范,軟件廠商根據(jù)它來(lái)實(shí)現(xiàn)EJB服務(wù)器。 Enterprise Bean 與 JavaBean 不同。JavaBean 是使用 java.beans 包開(kāi)發(fā)的,它是 Java SE的一部分。JavaBean 是一臺(tái)機(jī)器上同一個(gè)地址空間中運(yùn)行的組件,是進(jìn)程內(nèi)組件。Enterprise Bean 是使用 javax.ejb 包開(kāi)發(fā)的,它是標(biāo)準(zhǔn) JDK 的擴(kuò)展,是 Java EE 的一部分。Enterprise
17、 Bean 是在多臺(tái)機(jī)器上跨幾個(gè)地址空間運(yùn)行的組件,是進(jìn)程間組件。JavaBean 通常用作 GUI 窗口小部件,而 Enterprise Bean 則用作分布式商業(yè)對(duì)象。,JavaScript、VBScript 、 JScript辨異,JavaScript是由Netscape公司發(fā)明的一種Web腳本編制語(yǔ)言(基本語(yǔ)法和C語(yǔ)言非常類似) ,最初叫作 LiveScript,可嵌入在HTML文件中,用來(lái)處理以客戶端環(huán)境為基礎(chǔ)的動(dòng)態(tài)信息,但不
18、能訪問(wèn)服務(wù)器端資源, 只要瀏覽器支持JavaScript,用JavaScript編寫(xiě)的腳本就可以正確執(zhí)行。盡管JavaScript采用與Java類似的語(yǔ)法,但二者并無(wú)直接的聯(lián)系。VBScript是Microsoft公司開(kāi)發(fā)的一種通用的Web腳本語(yǔ)言,其基本語(yǔ)法與Basic語(yǔ)言類似,但它只能被IE瀏覽器所支持。 VBScript是ASP(Active Server Pages)默認(rèn)的腳本語(yǔ)言,使用ASP可以創(chuàng)建和運(yùn)行動(dòng)態(tài)、交互的Web
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《java語(yǔ)言程序設(shè)計(jì)》復(fù)習(xí)講義-read
- java相關(guān)歷史
- 畢業(yè)論文外文翻譯-java的歷史
- 的國(guó)旗。-read
- 函數(shù)的極限-read
- 提綱-read
- read and circle
- 鐵路的發(fā)展歷史
- cpu的發(fā)展歷史
- 搖滾的發(fā)展歷史
- 焊接的歷史發(fā)展
- 刀具的發(fā)展歷史
- 谷歌的發(fā)展歷史
- 肥皂的歷史發(fā)展
- 負(fù)數(shù)的發(fā)展歷史
- 鞋子的發(fā)展歷史
- 的零點(diǎn)。-read
- 形狀數(shù)的階-read
- read.txt
- READ ME!!!.txt
評(píng)論
0/150
提交評(píng)論