




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Java系統(tǒng)環(huán)境概述發(fā)展歷程、運(yùn)行環(huán)境及步驟第1頁(yè),共30頁(yè)。1.1 編程語(yǔ)言的發(fā)展客觀事物(問(wèn)題域)計(jì)算機(jī)(硬件)語(yǔ)言的鴻溝自然語(yǔ)言面向?qū)ο蟮恼Z(yǔ)言非OO的高級(jí)語(yǔ)言匯編語(yǔ)言 機(jī)器語(yǔ)言 語(yǔ)言的發(fā)展使鴻溝變窄第2頁(yè),共30頁(yè)。1.1.1 結(jié)構(gòu)化語(yǔ)言以1971年推出的PASCAL為典型代表進(jìn)一步縮小編程語(yǔ)言和自然語(yǔ)言的距離在結(jié)構(gòu)化程序設(shè)計(jì)中,把程序概括為如下的公式:程序=數(shù)據(jù)結(jié)構(gòu)+算法第3頁(yè),共30頁(yè)。1.1.2 面向?qū)ο蟮恼Z(yǔ)言(OOP)出發(fā)點(diǎn)是為了能更直接地描述問(wèn)題域中客觀存在的事物(即對(duì)象)以及它們之間的關(guān)系追求的是軟件系統(tǒng)對(duì)現(xiàn)實(shí)世界的直接模擬程序描述為如下的公式:程序=對(duì)象+消息第4頁(yè),共30
2、頁(yè)。1.1.3 OOP的特征把事物抽象成對(duì)象,用一組數(shù)據(jù)描述該對(duì)象的靜態(tài)特征,用一組方法來(lái)刻畫(huà)該對(duì)象的動(dòng)態(tài)特征用類(lèi)來(lái)表示一組具有相同屬性和方法的對(duì)象用父類(lèi)與子類(lèi)的概念來(lái)描述描述共性與特性用封裝把對(duì)象的屬性和方法結(jié)合為一個(gè)整體,并且屏蔽了對(duì)象的內(nèi)部細(xì)節(jié)。通過(guò)消息連接來(lái)表示對(duì)象之間的這種動(dòng)態(tài)聯(lián)系。第5頁(yè),共30頁(yè)。1.1.4 面向?qū)ο笳Z(yǔ)言的發(fā)展1967年挪威計(jì)算中心開(kāi)發(fā)的Simula 6720世紀(jì)70年代出現(xiàn)的CLU、并發(fā)Pasca1、Ada和Modula-2等1980年提出的Smalltalk-80是第一個(gè)完善的、能夠?qū)嶋H應(yīng)用的面向?qū)ο笳Z(yǔ)言20世紀(jì)80年代中期到90年代,是面向?qū)ο笳Z(yǔ)言走向繁榮的
3、階段C+,Java第6頁(yè),共30頁(yè)。1.2 Java網(wǎng)絡(luò)時(shí)代的編程語(yǔ)言Java是一種具有“簡(jiǎn)單、面向?qū)ο蟮?、分布式、解釋型、健壯、安全、與體系結(jié)構(gòu)無(wú)關(guān)、可移植、高性能、多線程和動(dòng)態(tài)執(zhí)行”等特性的語(yǔ)言。第7頁(yè),共30頁(yè)。1.2.1 Java的特點(diǎn)-簡(jiǎn)單性Java語(yǔ)言簡(jiǎn)單而高效,基本Java系統(tǒng)所占空間不到250 KB。Java具有類(lèi)似于C+的風(fēng)格,保留了C+語(yǔ)言的優(yōu)點(diǎn);擯棄了C+中不安全且容易引發(fā)程序錯(cuò)誤的指針;簡(jiǎn)化了內(nèi)存管理和文件管理第8頁(yè),共30頁(yè)。1.2.2 Java的特點(diǎn)-面向?qū)ο驤ava語(yǔ)言是純面向?qū)ο蟮牟幌馛+那樣既支持面向?qū)ο蟮募夹g(shù),又支持面向過(guò)程的程序設(shè)計(jì)技術(shù)。第9頁(yè),共30頁(yè)。
4、1.2.3 Java的特點(diǎn)-可移植性可移植性指的是程序不經(jīng)修改而在不同硬件或軟件平臺(tái)上運(yùn)行的特性源代碼級(jí)可移植性和二進(jìn)制代碼級(jí)可移植性C和C+只具有一定程度的源代碼級(jí)可移植性Java不僅源代碼級(jí)是可移植的,甚至源代碼經(jīng)過(guò)編譯之后形成的字節(jié)碼,也同樣是可移植的。第10頁(yè),共30頁(yè)。源代碼目標(biāo)碼(.obj文件)可執(zhí)行代碼(.exe文件)操作系統(tǒng)源代碼(.java文件)字節(jié)碼(.class文件)Java解釋器編譯編譯連接 運(yùn)行 解釋執(zhí)行 Java語(yǔ)言與傳統(tǒng)語(yǔ)言的不同運(yùn)行機(jī)制傳統(tǒng)語(yǔ)言程序的運(yùn)行機(jī)制;Java語(yǔ)言程序的運(yùn)行機(jī)制第11頁(yè),共30頁(yè)。1.2.4 Java的特點(diǎn)-穩(wěn)定安全摒棄了指針數(shù)據(jù)類(lèi)型提供
5、了數(shù)組下標(biāo)越界檢查機(jī)制提供了自動(dòng)內(nèi)存管理機(jī)制其他安全保障機(jī)制字節(jié)碼校驗(yàn)器運(yùn)行時(shí)內(nèi)存布局和類(lèi)裝載器文件訪問(wèn)限制第12頁(yè),共30頁(yè)。1.2.5 Java的特點(diǎn)-高性能高效的字節(jié)碼多線程及時(shí)編譯和嵌入C代碼第13頁(yè),共30頁(yè)。1.2.6 Java的特點(diǎn)-動(dòng)態(tài)特性Java采用“滯后聯(lián)編”機(jī)制避免類(lèi)庫(kù)局部升級(jí)帶來(lái)整體軟件無(wú)法使用。Java可以在分布式環(huán)境中動(dòng)態(tài)地維護(hù)應(yīng)用程序及其支持類(lèi)庫(kù)之間的一致性。對(duì)于Java而言,其支持類(lèi)庫(kù)升級(jí)之后,相應(yīng)的應(yīng)用程序不必重新編譯,也一樣可以利用升級(jí)后類(lèi)庫(kù)的新增功能。第14頁(yè),共30頁(yè)。1.2.7 Java的特點(diǎn)-分布式Java支持WWW客戶(hù)機(jī)/服務(wù)器計(jì)算模式Java網(wǎng)絡(luò)
6、類(lèi)庫(kù)是支持TCPIP協(xié)議的子例程庫(kù),目前支持的協(xié)議有HTTP和FTP等。第15頁(yè),共30頁(yè)。1.3 Java的開(kāi)發(fā)運(yùn)行環(huán)境一般可以采用Sun公司的Java 2 SDK有Solaris SPARC/x86、Linux x86、Microsoft Windows等版本,它們的建立過(guò)程略有不同。第16頁(yè),共30頁(yè)。Java工具集Java 2 SDK 開(kāi)發(fā)工具集工具名稱(chēng)說(shuō) 明JavacJava編譯器,用于將Java源程序編譯成字節(jié)碼JavaJava解釋器,用于解釋執(zhí)行Java字節(jié)碼appletviewer小應(yīng)用程序?yàn)g覽器,用于測(cè)試和運(yùn)行Java applet程序JavadocJava文檔生成器Java
7、pJava類(lèi)文件反匯編器JdbJava調(diào)試器JavahC文件生成器,利用此命令可實(shí)現(xiàn)在Java類(lèi)中調(diào)用C+代碼第17頁(yè),共30頁(yè)。1.4 Java程序的運(yùn)行步驟用Java語(yǔ)言編寫(xiě)的Java源程序,經(jīng)Java編譯器編譯后形成字節(jié)碼,這些字節(jié)碼由Java運(yùn)行系統(tǒng)負(fù)責(zé)解釋和執(zhí)行。解釋和執(zhí)行的過(guò)程可分為三步字節(jié)碼的裝入字節(jié)碼校驗(yàn)字節(jié)碼的翻譯和執(zhí)行第18頁(yè),共30頁(yè)。Java語(yǔ)言程序的編譯、解釋和執(zhí)行過(guò)程源程序(.java文件)字節(jié)碼(.class文件)類(lèi)裝載器字節(jié)碼校驗(yàn)器代碼生成器解釋器即時(shí)運(yùn)行部件硬件第19頁(yè),共30頁(yè)。1.4.1 Java程序的建立及運(yùn)行利用某一種文本編輯器建立Java源程序文件利
8、用Java編譯器(Javac)編譯該程序,產(chǎn)生.class字節(jié)碼文件利用解釋器(java)解釋字節(jié)碼文件,完成該程序的運(yùn)行過(guò)程第20頁(yè),共30頁(yè)。Java程序示例-源代碼【程序示例Demo1.java】public class Demo1 public static void main(String args ) System.out.println(“Hello World!); 輸入編輯完成后,保存文件并退回到DOS提示符狀態(tài)。第21頁(yè),共30頁(yè)。Java程序示例-編譯利用Java編譯器Javac對(duì)源文件進(jìn)行編譯。在DOS提示符后,鍵入如下命令: javac Demo1.java按Ente
9、r鍵后,開(kāi)始編譯該文件。若源文件無(wú)錯(cuò)誤,則產(chǎn)生Demo1.class字節(jié)碼文件;若源文件中有錯(cuò)誤,則編譯器將指出錯(cuò)誤位置,此時(shí)需返回上一步對(duì)源文件進(jìn)行修改第22頁(yè),共30頁(yè)。Java程序示例-運(yùn)行編譯無(wú)誤的Java字節(jié)碼文件,由Java解釋器(Java)負(fù)責(zé)裝入和執(zhí)行??稍贒OS提示符后輸入如下命令來(lái)運(yùn)行該程序: java Demo1運(yùn)行后在屏幕上輸出: Hello World!第23頁(yè),共30頁(yè)。Java程序示例-分析public class Demo1這一行表示聲明此程序要建立一個(gè)新類(lèi),類(lèi)名為Demo1任何Java程序都必須以類(lèi)的形式出現(xiàn),一個(gè)程序中可以定義若干個(gè)類(lèi),但只能定義一個(gè)publ
10、ic類(lèi)。用main定義了一個(gè)主方法,當(dāng)程序執(zhí)行時(shí),解釋器會(huì)找主方法,它是程序的入口點(diǎn)。 static表明這個(gè)方法可以通過(guò)類(lèi)名直接調(diào)用System是Java類(lèi)庫(kù)中的一個(gè)類(lèi),利用此類(lèi)可以獲得Java運(yùn)行環(huán)境的有關(guān)信息和輸入輸出信息等;out是System類(lèi)中的一個(gè)對(duì)象;println( )是out對(duì)象的一個(gè)方法第24頁(yè),共30頁(yè)。1.4.2 Java AppletJava程序可以分為兩種,除前面的一種外,另一個(gè)稱(chēng)為小應(yīng)用程序(Applet)這類(lèi)程序是嵌入到HTML文本中通過(guò)網(wǎng)絡(luò)傳輸并在Web瀏覽器中執(zhí)行。利用文本編輯器建立Java源程序文件利用Java 編譯器(Javac)編譯該Java Appl
11、et,產(chǎn)生.class字節(jié)碼文件建立一個(gè)HTML文件,在其中嵌入Java字節(jié)碼文件用WWW瀏覽器或appletviewer裝入該HTML文件,使Applet運(yùn)行。第25頁(yè),共30頁(yè)。Java程序示例-源代碼import java.applet.Applet;import java.awtpublic class Demo2 extends Appletpublic void paint(Graphics page)page.drawRect(50,50,40,40);page.drawRect(60,80,225,30);page.drawOval(75,65,20,20);page.draw
12、Line(35,60,100,120);page.drawString(“This is our first drawing”,110,70);第26頁(yè),共30頁(yè)。Java程序示例-編譯、嵌入編譯 編譯Applet與編譯Java程序相同。對(duì)于本例,可輸入如下命令: javac Demo2.java建立一個(gè)HTML文件 在EDIT中建立名為Demo2.html的HTML文件,并輸入下面兩行語(yǔ)句:第27頁(yè),共30頁(yè)。Java程序示例-運(yùn)行在Windows 9x的MS-DOS方式下,輸入如下命令: appletviewer c1_2.html按Enter鍵后,彈出Applet瀏覽器窗口第28頁(yè),共30頁(yè)。1.4.3 Java虛擬機(jī)由Java源程序編譯生成的字節(jié)碼須在一個(gè)稱(chēng)為Java虛擬機(jī)的平臺(tái)上運(yùn)行。JVM是可以運(yùn)行Java
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 高速公路營(yíng)運(yùn)管理練習(xí)試題
- 廣西壯族自治區(qū)灣縣市級(jí)名校2024屆中考數(shù)學(xué)模試卷含解析
- 公司保安培訓(xùn)大綱
- 口腔梅毒的健康宣教
- 華為的渠道銷(xiāo)售流程
- 功血病人的護(hù)理
- 新生兒巨細(xì)胞病毒感染的健康宣教
- 有機(jī)合成工-二期BDO-合成-技師復(fù)習(xí)測(cè)試卷含答案
- 2025杭州市房屋買(mǎi)賣(mài)合同樣本
- 企業(yè)心態(tài)培訓(xùn)
- 2025年高考政治一輪復(fù)習(xí)知識(shí)清單必修四《哲學(xué)與文化》重難點(diǎn)知識(shí)
- 2021年4月17日江蘇事業(yè)單位考試《綜合知識(shí)和能力素質(zhì)》(管理崗客觀題)
- 計(jì)算與人工智能概論(湖南大學(xué))知到智慧樹(shù)章節(jié)答案
- 飛機(jī)構(gòu)造基礎(chǔ)(完整課件)
- 三年級(jí)上冊(cè)勞動(dòng)《立體賀卡》課件
- 12萬(wàn)噸年丁二烯抽提裝置、10-3萬(wàn)噸年MTBE-丁烯-1裝置總承包工程施工組織設(shè)計(jì)
- 骨盆骨折治療新進(jìn)展
- 防范電信詐騙安全教育共建平安校園宣傳課件
- DFMEA-磷酸鐵鋰電池案例
- 網(wǎng)絡(luò)銷(xiāo)售食品監(jiān)督抽檢抽樣指南
- 第七屆江西省大學(xué)生金相技能大賽知識(shí)競(jìng)賽單選題題庫(kù)附有答案
評(píng)論
0/150
提交評(píng)論