[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程.ppt_第1頁(yè)
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程.ppt_第2頁(yè)
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程.ppt_第3頁(yè)
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程.ppt_第4頁(yè)
[計(jì)算機(jī)軟件及應(yīng)用]浙江工商JAVA課程.ppt_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余34頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、1,JAVA語(yǔ)言程序設(shè)計(jì),浙江工商大學(xué)信電學(xué)院 周靜靜 2009.9,2,1991, Sun 成立Green小組,開(kāi)發(fā)了Oak語(yǔ)言;,一、JAVA的發(fā)展歷史,1992.8,Oak與GreenOs、用戶接口模塊、硬件模塊 集成為Star Seven,成功表現(xiàn)高效的小程序代碼技術(shù), Green升級(jí)為First Person子公司,1994, First Person 解體,Sun決定將Oak與3W相結(jié)合;,1995年秋 , Netscape Navigator 2.0的 32位版本中支持Java,1995.1,James Gosling和Naughton 完成 Oak新版 與第一個(gè)基于Oak的應(yīng)用

2、程序Web Runner。 Oak Java WebRunner HotJava HotJava成為首個(gè)支持Java的第二代瀏覽器,3,James Gosling,4,Java 2 Platform, Java 2 Platform Standard Edition J2SE Java 2 Platform Enterprise Edition J2EE Java 2 Platform Micro Edition J2ME,5,Java 2 Platform,6,J 2 S E, 以Web為中心的客戶端或服務(wù)器端的軟件開(kāi)發(fā),以前稱為 JDK 1.2,目前最新版本1.7, J2SE 的實(shí)現(xiàn): J

3、ava 2 Software Development Kit (J2SDK), Standard Edition + Java 2 Runtime Environment (J2RE), Standard Edition,7,J2ME,針對(duì)消費(fèi)類的電子設(shè)備 如移動(dòng)電話、汽車導(dǎo)航系統(tǒng)等。 語(yǔ)言精簡(jiǎn)、運(yùn)行環(huán)境高度優(yōu)化。,8,J2EE, 開(kāi)發(fā)企業(yè)級(jí)和服務(wù)器端的應(yīng)用。 J2SE +Enterprice JavaBeans(EJB) + Java Servlets API + Java Server Pages(JSP),9,J2EE Application Model,10,二、Java 技術(shù),Jav

4、a是一種編程語(yǔ)言。 Java又是一種平臺(tái)。,11,Java編程語(yǔ)言,12,Java 平臺(tái),13,三、java概 述, JAVA的特征 JAVA的語(yǔ)法機(jī)制 JAVA運(yùn)行系統(tǒng) JAVA應(yīng)用 JAVA程序示例,14,Java的特征,Sun在JAVA“白皮書”中指出: JAVA是一種“簡(jiǎn)單、面向?qū)ο?、分布式、解釋型、健壯、安全、體系結(jié)構(gòu)中立、可移植、高性能和動(dòng)態(tài)”的編程語(yǔ)言,15,對(duì)C+進(jìn)行成功改造 去掉指針,取消多重繼承和運(yùn)算符重載 設(shè)立自動(dòng)內(nèi)存回收,Java特征-簡(jiǎn)單性,語(yǔ)法和語(yǔ)義都比較單純,容易學(xué)習(xí)和使用,提供大量功能豐富的可重用類庫(kù)簡(jiǎn)化了 編程工作量,16,Java特征-面向?qū)ο?Java 是

5、最純潔的面向?qū)ο笳Z(yǔ)言,對(duì)面向 對(duì)象方法學(xué)的支持也最全面:,JAVA對(duì)象有模塊化性質(zhì)和信息隱藏能力, 滿足面向?qū)ο蟮姆庋b要求; 支持繼承; 通過(guò)抽象類與接口支持多態(tài),17,Java特征-分布式,數(shù)據(jù)分布支持 通過(guò)Java的URL類可以訪問(wèn)網(wǎng)上的各類信息 資源,訪問(wèn)方式完全類似于本地文件系統(tǒng); 操作分布支持 通過(guò)在3W頁(yè)面中的小應(yīng)用程序(Applet)將計(jì) 算從服務(wù)器分布至客戶機(jī),避免網(wǎng)絡(luò)擁擠,提高 系統(tǒng)效率。,18,Java特征-半編譯,半解釋,19,Java特征-半編譯,半解釋,編譯器編譯,JAVA源程序,字節(jié)碼,解釋器解釋執(zhí)行,優(yōu)點(diǎn): 兼具編譯執(zhí)行的效率優(yōu)勢(shì)和解釋執(zhí)行的靈活性; 提高了應(yīng)用程

6、序的可移植性:源程序、中間代碼,20,Java特征-可移植性,21,“一次編程,到處運(yùn)行”- WORA 可移植性源于兩方面: Java的半編譯、半解釋的特征 Java采用標(biāo)準(zhǔn)的獨(dú)立于硬件平臺(tái)的數(shù)據(jù)類型,Java特征-可移植性,22,字節(jié)碼驗(yàn)證 運(yùn)行系統(tǒng)引入字節(jié)碼驗(yàn)證器,其中包含簡(jiǎn)單的 規(guī)則驗(yàn)證程序,以確保遵循下列規(guī)則:,Java特征-安全性,不存在偽造的指針; 未違反訪問(wèn)權(quán)限; 嚴(yán)格遵循對(duì)象訪問(wèn)規(guī)范來(lái)訪問(wèn)對(duì)象; 合適的參數(shù)調(diào)用方法; 沒(méi)有棧溢出,23,Java特征- 多線程, JAVA在語(yǔ)言級(jí)嵌入對(duì)并發(fā)的支持功能, 具體機(jī)制就是多線程。,24,Java特征-動(dòng)態(tài)特性, JAVA程序的基本組成單

7、元 類 是運(yùn)行時(shí)動(dòng)態(tài)裝載的 使JAVA可以動(dòng)態(tài)地維護(hù)應(yīng)用系統(tǒng)及其支持類 之間的一致性。,25, Java編譯生成的字節(jié)碼與機(jī)器代碼十分接近。 提供即時(shí)編譯等措施。,Java特征-高性能,26,JAVA的語(yǔ)法機(jī)制概述,與C+一致的語(yǔ)法機(jī)制: 數(shù)據(jù)類型、表達(dá)式、程序流控制、 結(jié)構(gòu)化異常處理等 與C+不同的語(yǔ)法機(jī)制: 類、接口(Interface)、程序包(Package)、 自動(dòng)內(nèi)存回收、以及多線程,27,JAVA與C+不同的語(yǔ)法機(jī)制,類: 最重要、最基本的語(yǔ)法設(shè)施,類的定義與繼承與 C+類似,主要區(qū)別:,JAVA不允許多重繼承,多重繼承必須通過(guò)接口實(shí)現(xiàn)。,自動(dòng)內(nèi)存回收 JAVA取消了指針類型,所

8、有動(dòng)態(tài)內(nèi)存請(qǐng)求均通過(guò)new運(yùn)算符,并且得到的不是指針而是引用。 系統(tǒng)進(jìn)行內(nèi)存回收。,28,JAVA運(yùn)行系統(tǒng),運(yùn)行環(huán)境的種類: JAVA Application - JAVA解釋器 JAVA Applet- JAVA兼容的Web瀏覽器。,29,JAVA運(yùn)行系統(tǒng)的構(gòu)成,類裝配器 字節(jié)碼驗(yàn)證器 解釋器 代碼生成器 運(yùn)行支持庫(kù),30,JAVA程序運(yùn)行過(guò)程,Hello.java,Javac Hello.java,Hello.class,網(wǎng)絡(luò),類裝配器,字節(jié)碼驗(yàn)證器,解釋器,代碼生成器,運(yùn)行支持庫(kù),本地系統(tǒng),編譯,運(yùn)行,31,JAVA虛擬機(jī), JVM的意義: 保證不同平臺(tái)上的JAVA運(yùn)行系統(tǒng)功能統(tǒng)一 JV

9、M的定義: 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.,32,JVM規(guī)范定義了一組抽象的邏輯組件,包括: 指令集; 寄存器組:程序計(jì)數(shù)器、棧頂指針等; 棧結(jié)構(gòu):保存各種參數(shù)等; 垃圾收集器; 存儲(chǔ)區(qū):存放字節(jié)碼的方法代碼、符號(hào)表,JVM組成部分,33, JAVA運(yùn)行系統(tǒng)是各供應(yīng)商對(duì)JVM的具體實(shí)現(xiàn)。 對(duì)運(yùn)行系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的要求: 必須支持SU

10、N的.class文件結(jié)構(gòu) 必須支持字節(jié)碼定義 必須支持JVM規(guī)范 使Java運(yùn)行系統(tǒng)功能是統(tǒng)一的, 并且只能執(zhí)行統(tǒng)一格式的字節(jié)碼.,JVM與 JAVA運(yùn)行系統(tǒng),34,兩種應(yīng)用程序 Java application: 編譯器編譯運(yùn)行 Java applet: 編譯器編譯 編寫HTML文件把Applet嵌入其中 瀏覽器中運(yùn)行 類庫(kù)API Java API是SUN提供的用Java語(yǔ)言開(kāi)發(fā)的類集合。 Java API包括幾十個(gè)包,常用的有:java.lang, java.io, java.util, , java.awt, java.applet等。,關(guān)鍵性術(shù)語(yǔ),35,Java核心類包舉例, Java

11、.lang JAVA語(yǔ)言的核心類組成,包括了基本數(shù)據(jù)類型 和出錯(cuò)處理方法等。 Java.io JAVA語(yǔ)言的標(biāo)準(zhǔn)I/O庫(kù) Java.util 工具類,如Date等。 J 實(shí)現(xiàn)網(wǎng)絡(luò)操作。 Java.awt-(Abstract Window Toolkit)創(chuàng)建用戶界面。 Java.applet 支持Applet開(kāi)發(fā)。,36,Java應(yīng)用程序舉例,HelloWorldApp.java: Public class HelloWorldApp public static void main( String args ) System.out.println(“Hello World!”); ,37,Java 程序編寫、編譯過(guò)程, main聲明- Java程序入口點(diǎn) 格式public static void main(String args) 源文件的名字與main()方法所在的類名相同, 擴(kuò)展名必須是 .java。 編譯 javac HelloWordApp.java -生成HelloWorldApp.class 運(yùn)行 java HelloWorldApp,38,JDK的安裝,運(yùn)行JDK中的安裝程序 改變環(huán)境變量: PATH=%PATH%; c:jdk1.6bin; CLASSPATH = .;c:jdk1.6lib ;,39,Java常用開(kāi)發(fā)環(huán)境, JDK 1. 2 (V1.3.0,

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論