版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第一講Java技術(shù)概述朱海波博士、副教授哈爾濱商業(yè)大學(xué)1一、Java的歷史與現(xiàn)狀機器語言 匯編語言高級語言1954年-FORTRAN 1958年-LISP
1958年-ALGOL 1959年-COBOL
1964年-BASIC 70年代-Ada
1972年-C 1970年-Pascal1966年-SimulaI 1980年-Smalltalk801983年-C++ 1987年-Perl
1990年-Python 1990年-Java
2000年-C#2Java與其他語言的橫向比較主流的程序設(shè)計語言
C++ObjectPascalJavaC#桌面應(yīng)用程序框架
MFCVCLJFC.NET企業(yè)應(yīng)用程序框架
WindowsDNA(ASP、COM、COM+)
JavaEE.NetFramework
開發(fā)工具
VisualC++
C++BuilderDelphiJDK,VisualJ++,JBuilderVisualC#
語言方法和技術(shù)方法和技術(shù)軟件3Java的發(fā)展歷史
Java的發(fā)展歷史,要從1990年開始追溯起。SunMicrosystem公司為了發(fā)展消費性電子產(chǎn)品而進行了一個名為Green的項目計劃。這個計劃的負(fù)責(zé)人是JamesGosling。起初他以C++來寫一種內(nèi)嵌式軟件,可以放在烤面包機或PAD等小型電子消費設(shè)備里,使得機器更聰明,更具有人工智能。但后來他發(fā)現(xiàn)C++并不適合這類的任務(wù)!因為C++常會有使系統(tǒng)失效的程序錯誤,尤其是內(nèi)存管理。4Java的發(fā)展歷史Gosling最后決定要發(fā)展一種新的語言,來解決C++的潛在性危險問題,這個語言名叫Oak(橡樹)。它保留了大部分與C++相似的語法,但卻把些較具危險性的功能加以改進,像內(nèi)存資源管理,便由語言本身來管理,以減少程序設(shè)計師的負(fù)擔(dān)及錯誤的產(chǎn)生。Oak是一種可移植性(portable)語言,也就是一種平臺獨立(platform-independent)的語言,能夠在各種芯片上運行。這樣子各家廠商就可降低研發(fā)成本,直接把應(yīng)用程序應(yīng)用在自家的產(chǎn)品上。
5Java的發(fā)展歷史時間到了1994年,Oak的技術(shù)已日趨成熟,這時剛好網(wǎng)絡(luò)也正開始蓬勃發(fā)展。而Oak研發(fā)小組發(fā)現(xiàn)Oak很適合作為一種網(wǎng)絡(luò)程序語言。因此發(fā)展了一個能與Oak相配合的瀏覽器——WebRunner,后更名為HotJava,它證明了Oak是一種能在網(wǎng)絡(luò)上發(fā)展的程序語言。后來,因為Oak這個商標(biāo)已被注冊走了,工程師們便想到以手中常享用的咖啡(Java)來重新命名,并于SunWorld95中被發(fā)表出來。從此以后,Java就隨著網(wǎng)絡(luò)的快速發(fā)展,而成了一個程序語言的明日之星。
6Java之父:JamesGosling7二、Java工作原理
對于大多數(shù)語言,如果要運行一個程序,要么編譯程序要么解釋程序;但是Java語言的程序則既要被編譯又要被解釋。編譯器將Java源程序翻譯為字節(jié)碼(bytecode)程序;解釋器(Java虛擬機)分析并解釋執(zhí)行字節(jié)碼程序。8一次編寫,處處運行Java源程序編譯字節(jié)碼文件Java虛擬機執(zhí)行LinuxWindowsMac.java.class9Java虛擬機
Java虛擬機是以Java字節(jié)碼為指令組的軟CPU,負(fù)責(zé)對本地*.class文件進行解釋執(zhí)行。
JVM的定義:
Animaginarymachinethatisimplementedbyemulatingitinsoftwareonarealmachine.CodefortheJavaVirtualMachineisstoredin.classfiles.JVM的構(gòu)成:類加載器:用來取得從網(wǎng)絡(luò)或本地的類文件。字節(jié)確認(rèn)器:確認(rèn)類文件是否有正確的格式。
JIT實時編譯器:使虛擬機能達到編譯式的運行效率。10Java平臺平臺(Platform)是程序在其中運行的硬件或軟件環(huán)境。最流行平臺:Windows,Linux,Solaris,MacOSJava既是一種程序語言也是一個平臺。Java平臺是一種運行在其它硬件平臺上的純軟件平臺,它有兩個組件:Java虛擬機(JavaVirtualMachine,JVM)和Java應(yīng)用編程接口(JavaAPI)JavaAPI和JVM將程序與硬件分離11Java平臺JavaAPI和JVM將程序與硬件分離12Java平臺的版本
Java平臺又稱Java運行時環(huán)境(JavaRuntimeEnvironment,JRE)。一臺計算機要想運行Java程序,則必須首先安裝JRE。目前Java平臺有3種版本,以適應(yīng)各種需求:
JavaTM2Platform,StandardEdition(JaveSE)(標(biāo)準(zhǔn)版)JavaTM2Platform,EnterpriseEdition(JavaEE)(企業(yè)版)
JavaTM2Platform,MicroEdition(JavaME)(小型家電版)
借助這些平臺版本,使得Java程序能在各式大小型機器及操作系統(tǒng)上運行,達成所謂程序可移植性、跨平臺的目標(biāo)。Java平臺的這些特性,使得微軟倍感威脅。微軟現(xiàn)今所提出的.Net,便是視Java平臺為強力競爭對手之一。
13概念辨析Java:一種程序設(shè)計語言,編寫的程序運行于Java虛擬機上,具有跨平臺的特點。JavaScript:一種能嵌在網(wǎng)頁中運行的腳本語言,由Netscape發(fā)明,除語法與Java接近外沒有其他關(guān)系。14Java語言Java語言,是一個新一代的高級(high-level)、通用目的(general-purpose)、面向?qū)ο螅╫bjec-oriented)的程序語言。其語法與C或C++類似,但在組織結(jié)構(gòu)上卻相當(dāng)?shù)牟煌K且粋€完全面向?qū)ο蟮某绦蛘Z言,程序的基本處理單位:類(class)以及API的組織,均以面向?qū)ο蟮挠^點來處理及架構(gòu)起來的。不僅如此,它在被設(shè)計的時候也傾向于是一種具生產(chǎn)力的語言(productionlanguage),而非只是研究性語言(researchlanguage)。所以當(dāng)我們學(xué)習(xí)運用Java語言的時候,便能很快地感受到它的便利與強大功能。15三、Java語言的特性1.完全的面向?qū)ο蠼Y(jié)構(gòu)化程序設(shè)計發(fā)展到面向?qū)ο蟪绦蛟O(shè)計是編程語言發(fā)展史上的一項革命,面向?qū)ο蠓椒ǖ娜齻€特點封裝、繼承、多態(tài)為應(yīng)對軟件危機作出了貢獻。
JAVA是完全面向?qū)ο蟮?,JAVA中所有的代碼都用類來組織。2.平臺無關(guān)性
一次編寫,到處運行。3.易學(xué)比其它面向?qū)ο笳Z言易學(xué)。4.
支持多線程。
5.安全—具有內(nèi)置的安全機制。6.預(yù)編寫代碼—可以使用已編好的大量代碼集。16Java與C及C++的區(qū)別不再有#include和#define等處理功能不再有structure,union及typedef不再有函數(shù)、不再有指針、不再有多重繼承不再有g(shù)oto語句不再有操作符重載(OperatiorOverloading)取消自動類型轉(zhuǎn)換,要求強制類型轉(zhuǎn)換17四、JDK及Java運行環(huán)境JavaEESDK:JavaEESoftwareDevelopmentKit,由Sun公司開發(fā)的命令行軟件開發(fā)工具箱。初學(xué)Java適合使用SDK。SunJavaStudio:由Sun公司開發(fā)的集成開發(fā)環(huán)境。JBuilder:由Inprise(前Borland)公司開發(fā)的可視化集成開發(fā)環(huán)境。目前最好用的Java開發(fā)工具,可做實際開發(fā)。VisualJ++:由微軟開發(fā)的可視化集成開發(fā)環(huán)境,支持windows功能調(diào)用。Eclipse:由IBM公司主導(dǎo)開發(fā)的免費的、開放源代碼的Java開發(fā)環(huán)境。Java程序員群體正在迅速地遷移到Eclipse上,因為它是免費的、質(zhì)量很好,而且非常容易定制??梢跃帉懞褪褂煤芏嗖寮╬lugin)。18Java軟件開發(fā)工具——JavaEESDKJavaEESDK,由SUN所開發(fā)出來的Java開發(fā)工具。是一般學(xué)習(xí)Java的開發(fā)者最初所使用的開發(fā)環(huán)境。其余的開發(fā)環(huán)境均架構(gòu)在此環(huán)境之上。下載地址:/technetwork/java/javaee/downloads/index.html19JavaEESDK安裝過程(forwindows)安裝過程:只需運行java_ee_sdk-6u4-jdk7-windows.exe。一般安裝到根目錄下,例如D:\java\jdk1.7.0。設(shè)置執(zhí)行路徑和庫文件查找路徑:鼠標(biāo)右擊【我的電腦】,選擇【系統(tǒng)】【高級】【環(huán)境變量】【PATH】,加入“D:\java\jdk1.7.0\bin”鼠標(biāo)右擊【我的電腦】,選擇【系統(tǒng)】【高級】【環(huán)境變量】【CLASSPATH】,加入“.;D:\java\jdk1.7.0\lib”20Java安裝目錄說明
D:\java\jdk1.7.0\子目錄說明bin編譯器及一些工具jreJava運行環(huán)境(虛擬機)lib庫文件include用于本地方法的文件demo演示程序docs庫文檔,html格式src庫源文件21命令行工具軟件的使用編譯java文件javac*.java運行class文件:如要運行Example.class文件,輸入命令
javaExample注意:區(qū)分大小寫,java命令后不帶.class后綴。運行jar文件:如要運行Example.jar文件,輸入命令
java–jarExample.jar注意:不區(qū)分大小寫,java命令后帶.jar后綴。提取注釋(自動生成幫助文檔)javadoc–ddirectory*.java22五、創(chuàng)建第一個應(yīng)用程序
Step1:創(chuàng)建源代碼文件;Step2:將源代碼文件編譯為字節(jié)碼文件;Step3:運行字節(jié)碼文件23Step1:創(chuàng)建源代碼文件啟動“記事本”,輸入如下代碼:publicclassHelloWorldApp{publicstaticvoidmain(String[]args){//Displaythestring.
System.out.println("HelloWorld!"); }}注意:大小寫敏感;保存文件名為HelloWorldApp.java24Step2:編譯源代碼文件進入DOS或Command提示符狀態(tài);轉(zhuǎn)到Java源程序所在目錄,如D:\java\javacode輸入如下命令,并回車:
javac
HelloWorldApp.java注意:編譯成功后將生成字節(jié)碼文件
HelloWorldApp.class25Step3:運行字節(jié)碼文件在相同目錄下輸入如下命令,并回車:
javaHelloWorldApp26Java程序基本結(jié)構(gòu)import語句class{
publicstaticvoidmain(String[]args){}}主類名稱
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 上海市房屋租賃合同范例
- 辦公電器購銷合同范例
- 乙方提供合同范例
- 機制砂供應(yīng)合同范例
- 返還差價合同范例
- 進口貿(mào)易傭金合同范例
- 物件無償保管合同范例
- 商標(biāo)中介合同范例
- 臺灣機柜租賃合同范例
- 征收公司合同范例
- 圖文轉(zhuǎn)換-圖表(小題訓(xùn)練)(解析版)-2025年部編版中考語文一輪復(fù)習(xí)
- 七上語文期末考試復(fù)習(xí)計劃表
- 2024兒童青少年抑郁治療與康復(fù)痛點調(diào)研報告 -基于患者家長群體的調(diào)研
- 大數(shù)據(jù)+治理智慧樹知到期末考試答案章節(jié)答案2024年廣州大學(xué)
- 江蘇省建筑與裝飾工程計價定額(2014)電子表格版
- 山東省煙臺市2023-2024學(xué)年高二上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 2024年中國鐵路南寧局集團招聘筆試參考題庫含答案解析
- 國家開放大學(xué)化工節(jié)能課程-復(fù)習(xí)資料期末復(fù)習(xí)題
- GB 18613-2020 電動機能效限定值及能效等級
- 小學(xué)寫字閱讀考核實施方案
- 發(fā)現(xiàn)所授薪律師及律師助理管理辦法
評論
0/150
提交評論