版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第一講Java技術概述朱海波博士、副教授哈爾濱商業(yè)大學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與其他語言的橫向比較主流的程序設計語言
C++ObjectPascalJavaC#桌面應用程序框架
MFCVCLJFC.NET企業(yè)應用程序框架
WindowsDNA(ASP、COM、COM+)
JavaEE.NetFramework
開發(fā)工具
VisualC++
C++BuilderDelphiJDK,VisualJ++,JBuilderVisualC#
語言方法和技術方法和技術軟件3Java的發(fā)展歷史
Java的發(fā)展歷史,要從1990年開始追溯起。SunMicrosystem公司為了發(fā)展消費性電子產品而進行了一個名為Green的項目計劃。這個計劃的負責人是JamesGosling。起初他以C++來寫一種內嵌式軟件,可以放在烤面包機或PAD等小型電子消費設備里,使得機器更聰明,更具有人工智能。但后來他發(fā)現(xiàn)C++并不適合這類的任務!因為C++常會有使系統(tǒng)失效的程序錯誤,尤其是內存管理。4Java的發(fā)展歷史Gosling最后決定要發(fā)展一種新的語言,來解決C++的潛在性危險問題,這個語言名叫Oak(橡樹)。它保留了大部分與C++相似的語法,但卻把些較具危險性的功能加以改進,像內存資源管理,便由語言本身來管理,以減少程序設計師的負擔及錯誤的產生。Oak是一種可移植性(portable)語言,也就是一種平臺獨立(platform-independent)的語言,能夠在各種芯片上運行。這樣子各家廠商就可降低研發(fā)成本,直接把應用程序應用在自家的產品上。
5Java的發(fā)展歷史時間到了1994年,Oak的技術已日趨成熟,這時剛好網絡也正開始蓬勃發(fā)展。而Oak研發(fā)小組發(fā)現(xiàn)Oak很適合作為一種網絡程序語言。因此發(fā)展了一個能與Oak相配合的瀏覽器——WebRunner,后更名為HotJava,它證明了Oak是一種能在網絡上發(fā)展的程序語言。后來,因為Oak這個商標已被注冊走了,工程師們便想到以手中常享用的咖啡(Java)來重新命名,并于SunWorld95中被發(fā)表出來。從此以后,Java就隨著網絡的快速發(fā)展,而成了一個程序語言的明日之星。
6Java之父:JamesGosling7二、Java工作原理
對于大多數(shù)語言,如果要運行一個程序,要么編譯程序要么解釋程序;但是Java語言的程序則既要被編譯又要被解釋。編譯器將Java源程序翻譯為字節(jié)碼(bytecode)程序;解釋器(Java虛擬機)分析并解釋執(zhí)行字節(jié)碼程序。8一次編寫,處處運行Java源程序編譯字節(jié)碼文件Java虛擬機執(zhí)行LinuxWindowsMac.java.class9Java虛擬機
Java虛擬機是以Java字節(jié)碼為指令組的軟CPU,負責對本地*.class文件進行解釋執(zhí)行。
JVM的定義:
Animaginarymachinethatisimplementedbyemulatingitinsoftwareonarealmachine.CodefortheJavaVirtualMachineisstoredin.classfiles.JVM的構成:類加載器:用來取得從網絡或本地的類文件。字節(jié)確認器:確認類文件是否有正確的格式。
JIT實時編譯器:使虛擬機能達到編譯式的運行效率。10Java平臺平臺(Platform)是程序在其中運行的硬件或軟件環(huán)境。最流行平臺:Windows,Linux,Solaris,MacOSJava既是一種程序語言也是一個平臺。Java平臺是一種運行在其它硬件平臺上的純軟件平臺,它有兩個組件:Java虛擬機(JavaVirtualMachine,JVM)和Java應用編程接口(JavaAPI)JavaAPI和JVM將程序與硬件分離11Java平臺JavaAPI和JVM將程序與硬件分離12Java平臺的版本
Java平臺又稱Java運行時環(huán)境(JavaRuntimeEnvironment,JRE)。一臺計算機要想運行Java程序,則必須首先安裝JRE。目前Java平臺有3種版本,以適應各種需求:
JavaTM2Platform,StandardEdition(JaveSE)(標準版)JavaTM2Platform,EnterpriseEdition(JavaEE)(企業(yè)版)
JavaTM2Platform,MicroEdition(JavaME)(小型家電版)
借助這些平臺版本,使得Java程序能在各式大小型機器及操作系統(tǒng)上運行,達成所謂程序可移植性、跨平臺的目標。Java平臺的這些特性,使得微軟倍感威脅。微軟現(xiàn)今所提出的.Net,便是視Java平臺為強力競爭對手之一。
13概念辨析Java:一種程序設計語言,編寫的程序運行于Java虛擬機上,具有跨平臺的特點。JavaScript:一種能嵌在網頁中運行的腳本語言,由Netscape發(fā)明,除語法與Java接近外沒有其他關系。14Java語言Java語言,是一個新一代的高級(high-level)、通用目的(general-purpose)、面向對象(objec-oriented)的程序語言。其語法與C或C++類似,但在組織結構上卻相當?shù)牟煌?。它是一個完全面向對象的程序語言,程序的基本處理單位:類(class)以及API的組織,均以面向對象的觀點來處理及架構起來的。不僅如此,它在被設計的時候也傾向于是一種具生產力的語言(productionlanguage),而非只是研究性語言(researchlanguage)。所以當我們學習運用Java語言的時候,便能很快地感受到它的便利與強大功能。15三、Java語言的特性1.完全的面向對象結構化程序設計發(fā)展到面向對象程序設計是編程語言發(fā)展史上的一項革命,面向對象方法的三個特點封裝、繼承、多態(tài)為應對軟件危機作出了貢獻。
JAVA是完全面向對象的,JAVA中所有的代碼都用類來組織。2.平臺無關性
一次編寫,到處運行。3.易學比其它面向對象語言易學。4.
支持多線程。
5.安全—具有內置的安全機制。6.預編寫代碼—可以使用已編好的大量代碼集。16Java與C及C++的區(qū)別不再有#include和#define等處理功能不再有structure,union及typedef不再有函數(shù)、不再有指針、不再有多重繼承不再有goto語句不再有操作符重載(OperatiorOverloading)取消自動類型轉換,要求強制類型轉換17四、JDK及Java運行環(huán)境JavaEESDK:JavaEESoftwareDevelopmentKit,由Sun公司開發(fā)的命令行軟件開發(fā)工具箱。初學Java適合使用SDK。SunJavaStudio:由Sun公司開發(fā)的集成開發(fā)環(huán)境。JBuilder:由Inprise(前Borland)公司開發(fā)的可視化集成開發(fā)環(huán)境。目前最好用的Java開發(fā)工具,可做實際開發(fā)。VisualJ++:由微軟開發(fā)的可視化集成開發(fā)環(huán)境,支持windows功能調用。Eclipse:由IBM公司主導開發(fā)的免費的、開放源代碼的Java開發(fā)環(huán)境。Java程序員群體正在迅速地遷移到Eclipse上,因為它是免費的、質量很好,而且非常容易定制。可以編寫和使用很多插件(plugin)。18Java軟件開發(fā)工具——JavaEESDKJavaEESDK,由SUN所開發(fā)出來的Java開發(fā)工具。是一般學習Java的開發(fā)者最初所使用的開發(fā)環(huán)境。其余的開發(fā)環(huán)境均架構在此環(huán)境之上。下載地址:/technetwork/java/javaee/downloads/index.html19JavaEESDK安裝過程(forwindows)安裝過程:只需運行java_ee_sdk-6u4-jdk7-windows.exe。一般安裝到根目錄下,例如D:\java\jdk1.7.0。設置執(zhí)行路徑和庫文件查找路徑:鼠標右擊【我的電腦】,選擇【系統(tǒng)】【高級】【環(huán)境變量】【PATH】,加入“D:\java\jdk1.7.0\bin”鼠標右擊【我的電腦】,選擇【系統(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)建第一個應用程序
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);轉到Java源程序所在目錄,如D:\java\javacode輸入如下命令,并回車:
javac
HelloWorldApp.java注意:編譯成功后將生成字節(jié)碼文件
HelloWorldApp.class25Step3:運行字節(jié)碼文件在相同目錄下輸入如下命令,并回車:
javaHelloWorldApp26Java程序基本結構import語句class{
publicstaticvoidmain(String[]args){}}主類名稱
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年通信協(xié)議與網絡協(xié)議進階題集
- 2026年解釋針對職場溝通技巧和禮儀的考核題目
- 2026年金融投資安全試題解析投資風險與防范策略
- 2026年系統(tǒng)架構師面試復雜算法題的解決思路
- 2026年企業(yè)內部培訓資料CNAS企業(yè)質量認證標準相關試題
- 2026年能源工程項目收尾技術要點題解
- 2026年政府政策與法律解讀公務員筆試實務模擬題
- 2026年財務管理與財務分析考試寶典
- 2026年審計從業(yè)者易混淆知識點錯題集
- 2026年程序員進階考試題庫代碼與算法全解析
- 專利免責合同范例
- 《我國中藥飲片產業(yè)國際競爭力探析》9200字(論文)
- 檢驗項目管理培訓
- 《梅毒診斷及治療》課件
- DB45T 2313-2021 奶水牛同期發(fā)情-人工授精操作技術規(guī)程
- 購買助動車合同模板
- 兩個合伙人股權協(xié)議書范文模板
- GB/T 44082-2024道路車輛汽車列車多車輛間連接裝置強度要求
- 控煙中醫(yī)科普知識講座
- 脫碳塔CO2脫氣塔設計計算
- 產品報價單貨物報價表(通用版)
評論
0/150
提交評論