




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
JAVA語言程序設(shè)計(jì)1.1什么是Java技術(shù)1.2Java
的主要應(yīng)用1.3基本的Java
應(yīng)用程序本章小結(jié)第一章目錄教學(xué)目標(biāo):Java技術(shù)是當(dāng)前IT領(lǐng)域使用最廣泛的技術(shù),在IT領(lǐng)域掀起了一場巨大的革命。從本質(zhì)上說,Java不僅是一種編程語言,還是一種開發(fā)環(huán)境、一種應(yīng)用程序環(huán)境、一種部署環(huán)境。本章主要介紹Java的起源、編輯環(huán)境以及Java
技術(shù)的基本知識,探討IT技術(shù)上中國和外國之間的差距,并重點(diǎn)探討Java技術(shù)在不同方面的應(yīng)用。教學(xué)重點(diǎn):了解Java
的特性。熟悉Java
程序設(shè)計(jì)的基本結(jié)構(gòu)。掌握J(rèn)ava
開發(fā)環(huán)境的選擇及安裝。第一章1.1.1Java的含義
Java最初是Sun公司推出的新的一代面向?qū)ο蟪绦蛟O(shè)計(jì)語言。Java技術(shù)是一種語言一種開發(fā)環(huán)境一種應(yīng)用程序環(huán)境一種部署環(huán)境1.1什么是Java技術(shù)1.1.1Java的含義Java作為一種編程語言,語法與C++的語法相似,任何傳統(tǒng)的編程語言所能創(chuàng)建的應(yīng)用程序,都可以用Java來創(chuàng)建。Java作為一種開發(fā)環(huán)境,提供了一系列工具:編譯器、解釋器、文檔生成器、類文件、打包工具等。1.1什么是Java技術(shù)1.1.1Java的含義Java作為一種開發(fā)環(huán)境,可運(yùn)行于任何安裝了Java運(yùn)行環(huán)境(JavaRuntimeEnvironment,JRE)的計(jì)算機(jī)中。Java作為一種部署環(huán)境,主要有兩種。一種是JRE,它包含一套完整的Java技術(shù)的所有類文件,其中包括語言類、圖形界面類和高級的集合應(yīng)用程序編程接口(ApplicationProgrammingInterface,API)等。另一種是瀏覽器,大多數(shù)商業(yè)瀏覽器都提供Java技術(shù)的解釋器和運(yùn)行時環(huán)境。1.1什么是Java
技術(shù)1.1.2Java的特點(diǎn)
Java語言是簡單的
Java語言是分布式的
Java語言是健壯的
Java語言是安全的
Java語言是可移植的
Java語言是多線程的
Java語言是動態(tài)的1.1什么是Java
技術(shù)1.Java語言是簡單的Java的語法與C語言和C++語言很接近。而且Java丟棄了C++中操作符重載、多繼承、自動的強(qiáng)制類型轉(zhuǎn)換等很難理解的特性。Java不使用指針,可自動進(jìn)行垃圾回收,只支持單繼承。2.Java語言是分布式的Java支持Internet應(yīng)用的開發(fā),Java的遠(yuǎn)程方法激活(RemoteMethodInvocation,RMI)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段。1.1什么是Java
技術(shù)3.Java語言是健壯的Java的強(qiáng)類型機(jī)制、異常處理、垃圾回收機(jī)制等是Java程序健壯性的重要保證。Java的安全檢查機(jī)制使其更具健壯性。4.Java語言是安全的Java對通過網(wǎng)絡(luò)下載的類具有一個安全防范機(jī)制(類加載器),以防惡意代碼的攻擊。除此以外,分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查、安全管理機(jī)制讓Java的應(yīng)用設(shè)置更加安全。1.1什么是Java
技術(shù)5.Java語言是可移植的
Java程序在Java平臺上被編譯為字節(jié)碼格式,字節(jié)碼格式的文件在Java平臺的虛擬機(jī)上執(zhí)行,因此,Java程序可以在任何裝了Java虛擬機(jī)的平臺環(huán)境中運(yùn)行。6.Java語言是多線程的
在Java中,線程是一種特殊的對象,線程的活動由一組方法來控制。Java支持多個線程同時執(zhí)行,并提供多線程之間的同步機(jī)制。7.Java語言是動態(tài)的
Java程序需要的類能夠被動態(tài)地被載入運(yùn)行環(huán)境,也可以通過網(wǎng)絡(luò)來載入所需要的類。這也有利于軟件的升級。1.1什么是Java
技術(shù)1.1.3Java的特性Java虛擬機(jī)
垃圾回收機(jī)制
代碼安全性檢查1.1什么是Java技術(shù)1.Java虛擬機(jī)
Java虛擬機(jī)就是在真實(shí)的機(jī)器中用軟件模擬實(shí)現(xiàn)的一種虛擬機(jī)器,為軟件的運(yùn)行提供了一個平臺。Java的可執(zhí)行程序在Java虛擬機(jī)上運(yùn)行。
Java程序運(yùn)行流程如圖1-1所示:程序編寫后被保存為*.java文件,編譯器將其編譯成*.class文件,通過裝載,*.class文件被加載到類加載器上,通過字節(jié)碼檢驗(yàn)器的校驗(yàn),解釋器進(jìn)行解釋執(zhí)行,得出結(jié)果。圖中由虛線括起來的部分就是Java虛擬機(jī)。因?yàn)镴ava虛擬機(jī)將程序和硬件平臺隔離開來,程序只在Java虛擬機(jī)運(yùn)行,所以Java程序的可移植性非常好。1.1什么是Java
技術(shù)1.1什么是Java
技術(shù)2.垃圾回收機(jī)制
垃圾回收機(jī)制是Java區(qū)別于其他程序設(shè)計(jì)語言的顯著特性。它使程序員從手工回收內(nèi)存空間的繁重工作中解脫。在C或C++等語言中,程序員需要開辟內(nèi)存空間,在使用結(jié)束后要負(fù)責(zé)釋放內(nèi)存。在Java中,當(dāng)一個內(nèi)存空間沒有引用指向它時,該內(nèi)存便成為垃圾。Java虛擬機(jī)的一個系統(tǒng)級線程會自動釋放該內(nèi)存空間。垃圾回收機(jī)制意味著程序不再需要的對象就是“無用信息”,這些信息將被丟棄。垃圾回收機(jī)制能自動釋放內(nèi)存空間,減輕程序員編程的負(fù)擔(dān),提高編程效率。1.1什么是Java
技術(shù)Java虛擬機(jī)的垃圾回收在以下兩種情況下進(jìn)行:Java虛擬機(jī)空閑時,檢查內(nèi)存是否為垃圾,內(nèi)存釋放,回收空間。系統(tǒng)沒有可用空間時,進(jìn)行垃圾回收,釋放空間。Java的垃圾回收機(jī)制是自動進(jìn)行的,不需要程序員干預(yù)。1.1什么是Java
技術(shù)3.代碼安全性檢查
Java運(yùn)行時主要執(zhí)行3個任務(wù):加載代碼、校驗(yàn)代碼、執(zhí)行代碼。其中,加載代碼由類加載器完成,校驗(yàn)代碼由字節(jié)碼校驗(yàn)器完成,執(zhí)行代碼由解釋器完成。
首先,由類加載器將類文件(也就是編譯后產(chǎn)生的*.class文件)加載到Java虛擬機(jī)中,為了增加安全性,將本地文件系統(tǒng)的類和網(wǎng)絡(luò)系統(tǒng)導(dǎo)入的類區(qū)分開來。因?yàn)楸镜匚募到y(tǒng)的類總是先被加載,這就可以限制任何的“特洛伊木馬”程序,一旦所有的類都被加載完,執(zhí)行文件的內(nèi)存就固定了。1.1什么是Java
技術(shù)
其次,字節(jié)碼校驗(yàn)器進(jìn)行校驗(yàn)。所有通過網(wǎng)絡(luò)導(dǎo)入的類文件都要經(jīng)過字節(jié)碼校驗(yàn)器校驗(yàn),但是字節(jié)碼校驗(yàn)器不檢查那些可信任的編譯器所生成的類文件,而是對那些有意違背命名空間規(guī)定和Java語言規(guī)則的類文件進(jìn)行檢查,并且關(guān)閉具有安全性漏洞的類文件。
字節(jié)碼校驗(yàn)器對程序代碼進(jìn)行4次校驗(yàn),主要執(zhí)行下面的檢查:加載的類符合Java虛擬機(jī)規(guī)范的類文件格式;是否違反訪問限制;代碼上是否造成上溢或者下溢;所有操作代碼的參數(shù)類型是否都是正確的;是否有非法的數(shù)據(jù)類型轉(zhuǎn)換發(fā)生;該類文件是否存在某些非法操作。1.1什么是Java
技術(shù)
最后,如果字節(jié)碼校驗(yàn)器校驗(yàn)通過,由解釋器負(fù)責(zé)把類文件解釋成機(jī)器碼進(jìn)行執(zhí)行。1.1什么是Java
技術(shù)
最后,如果字節(jié)碼校驗(yàn)器校驗(yàn)通過,由解釋器負(fù)責(zé)把類文件解釋成機(jī)器碼進(jìn)行執(zhí)行。1.1什么是Java
技術(shù)目前Java有三個版本:JavaSE(標(biāo)準(zhǔn)版)主要用于桌面應(yīng)用的軟件的編程;JavaEE(企業(yè)版)主要用于分布式網(wǎng)絡(luò)程序的開發(fā);JavaME(微型版)主要用于嵌入式系統(tǒng)開發(fā)。1.2Java
的主要應(yīng)用1.2.1JavaSE應(yīng)用基礎(chǔ)JavaSE就是JavaStandardEdition(標(biāo)準(zhǔn)版),包含那些構(gòu)成Java核心的類,如數(shù)據(jù)庫連接、接口定義、輸入/輸出、網(wǎng)絡(luò)編程等。JJavaSE就是定位在客戶端程序的應(yīng)用上。如果開發(fā)JavaSE的程序,那么就需要用Java編寫完整的工程項(xiàng)目。前臺有用戶交互的界面,后臺有數(shù)據(jù)庫連接。這樣就需要掌握J(rèn)ava語言基礎(chǔ)、用戶界面、高級編程。也就是說,本書的3個篇章都需要學(xué)習(xí)。1.2Java的主要應(yīng)用1.2.2JavaEE應(yīng)用基礎(chǔ)
JavaEE就是JavaEnterpriseEdition(企業(yè)版),包含JavaSE中的類,還包含用于開發(fā)企業(yè)級應(yīng)用的類,如EJB、Servlet、JSP、XML、事務(wù)控制等。JavaEE在JavaSE的基礎(chǔ)上增加了企業(yè)內(nèi)部擴(kuò)展類函數(shù)庫的支持,JavaEE定位在服務(wù)器端程序的應(yīng)用上。
如果開發(fā)JavaEE的程序,Java在工程項(xiàng)目中的作用僅僅是搭建后臺的控制層,而前臺的用戶交互的界面則由MVC結(jié)構(gòu)中的視圖層搭建,即由HTML和JavaScript負(fù)責(zé),所以只需要掌握J(rèn)ava語言基礎(chǔ)、高級編程。也就是說,只需要學(xué)習(xí)本書的基礎(chǔ)篇和高級應(yīng)用篇。1.2Java的主要應(yīng)用1.2.3JavaME應(yīng)用基礎(chǔ)
JavaME就是JavaMicroEdition(微型版),用于消費(fèi)類電子產(chǎn)品的軟件開發(fā),如智能卡、手機(jī)、PDA、機(jī)頂盒。JavaME并不支持所有的Java基本類,只支持Java標(biāo)準(zhǔn)規(guī)范中所定義的核心類函數(shù)庫的子集,并加入了一些支持嵌入式系統(tǒng)的擴(kuò)展類函數(shù)庫。JavaME定位在嵌入式系統(tǒng)的應(yīng)用上。
如果開發(fā)JavaME的程序,前臺的用戶交互界面和后臺的數(shù)據(jù)庫連接都由嵌入式平臺提供,所以只需要掌握J(rèn)ava語言基礎(chǔ)、多線程編程和網(wǎng)絡(luò)編程。也就是說,只需要學(xué)習(xí)本書的基礎(chǔ)篇和高級應(yīng)用篇的部分章節(jié)。1.2Java的主要應(yīng)用1.3.1程序說明【例1-1】在記事本中編寫應(yīng)用程序,并保存程序名為Example1_1.java的文件。1.3基本的Java
應(yīng)用程序publicclassExample1_1 { publicstaticvoidmain(String[]args) { System.out.println("HelloWorld!"); } }第1行“publicclassExample1_1”代表建立一個公有類,類的名稱為Example1_1。Java程序中定義類必須使用關(guān)鍵字class,一個程序至少有一個類。public是一個限定訪問權(quán)限的標(biāo)識,代表該類的訪問權(quán)限是公有的。正是由于在class前有public,所以該文件的名稱必須是Example1_1.java。第2行和第7行是類的開始和結(jié)束標(biāo)識。第3行“publicstaticvoidmain(String[]args)”是一個固定用法,代表這是一個main()方法(在C語言中也稱函數(shù))。main()方法是程序的主方法,一個Java程序由主方法開始執(zhí)行,執(zhí)行完主方法程序就結(jié)束。在一個程序中,可以有多個方法,但是主方法只能有一個。1.3基本的Java
應(yīng)用程序第4行和第6行是main()方法的開始和結(jié)束標(biāo)識。第5行“System.out.println("HelloWorld!");”。main()方法中只有一條語句,功能是打印出括號中的字符串“HelloWorld!”。1.3基本的Java
應(yīng)用程序1.3.2運(yùn)行環(huán)境說明1.JDK環(huán)境(1)下載JDK安裝包(2)安裝JDK(3)設(shè)置JDK
設(shè)置三個環(huán)境變量:JAVA_HOME:JDK安裝目錄ClassPath:“%JAVA_HOME%\jre\lib\rt.jar;.;”Path:“%JAVA_HOME%\bin;”(4)查看1.3基本的Java
應(yīng)用程序1.JDK環(huán)境(1)下載JDK安裝包(2)安裝JDK(3)設(shè)置JDK(三個環(huán)境變量)JAVA_HOME:JDK安裝目錄classpath:“%JAVA_HOME%\jre\lib\rt.jar;.;”path:“%JAVA_HOME%\bin;”(4)查看1.3基本的Java
應(yīng)用程序2.命令行環(huán)境(1)編譯Java源程序(2)運(yùn)行字節(jié)碼文件1.3基本的Java應(yīng)用程序3.集成開發(fā)環(huán)境(1)安裝MyEclipse(2)運(yùn)行程序1.3基本的Java
應(yīng)用程序Java不僅僅是一種語言,它已經(jīng)發(fā)展為一種開發(fā)環(huán)境、一種應(yīng)用程序環(huán)境、一種部署環(huán)境。Java技術(shù)是通過Java虛擬機(jī)、垃圾回收機(jī)制、代碼安全性檢查3個特性實(shí)現(xiàn)其體
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023四年級數(shù)學(xué)上冊 六 可能性教學(xué)實(shí)錄 蘇教版
- 2024-2025學(xué)年高中歷史下學(xué)期第1周教學(xué)實(shí)錄(新中國初期的政治建設(shè))
- 2025年電力電纜安裝運(yùn)維工(中級)職業(yè)技能考試題(附答案)
- 泉州疫情防控課件
- 猴年微信祝福語
- 河南疫情防控課件
- 大連城市榜樣評選啟動典禮活動策劃案
- 2024年計(jì)算機(jī)二級考試強(qiáng)化訓(xùn)練試題及答案
- waters制備液相說明書
- 山西省大同一中、同煤一中2015屆高三上學(xué)期期末聯(lián)合考試政治試題(含答案)
- 最常用2000個英語單詞-電子表格版
- 幼兒園消防安全演示
- 全球價值鏈嵌入度
- 人力資源六大模塊課件
- 參軍復(fù)檢申請書范文
- 酒店保安服務(wù)投標(biāo)方案
- 用人單位意見反饋表模板
- SVG無功補(bǔ)償系統(tǒng)培訓(xùn)
- 蘭州大學(xué)學(xué)生駕駛摩托車及其他機(jī)動車輛家長知情同意書
- 靜脈治療護(hù)理技術(shù)操作規(guī)范(2023版)理論考核試題及答案
- 施工質(zhì)量標(biāo)準(zhǔn)及質(zhì)量管理體系
評論
0/150
提交評論