Java語言程序設(shè)計(jì)(第1章).ppt
《Java語言程序設(shè)計(jì)(第1章).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《Java語言程序設(shè)計(jì)(第1章).ppt(36頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
Java程序設(shè)計(jì),Java程序設(shè)計(jì),第一章:緒論,1.1Java語言的歷史-1,Java是什么嗎?,Justanothervaluelessacronym,Java是一個(gè)地名嗎?,1.1Java語言的歷史-2,1991年4月,Sun公司的JamesGosling(詹姆斯高斯林)領(lǐng)導(dǎo)了一個(gè)代號(hào)為Green的項(xiàng)目,其目的是為家用消費(fèi)電子產(chǎn)品開發(fā)一個(gè)分布式代碼系統(tǒng)。編程語言:基于C+,開發(fā)一種新的語言O(shè)ak。,Java創(chuàng)始人JamesGosling博士,1.1Java語言的歷史-3,Java由來:項(xiàng)目組骨干人員在咖啡館品嘗著美味的Java(爪哇島特產(chǎn))咖啡。,Java成名:項(xiàng)目組編寫了能夠運(yùn)行Java程序的HotJava網(wǎng)絡(luò)瀏覽器,結(jié)果Java一夜成名,迅速流行,甚至被譽(yù)為Internet上的世界語。,1.2什么是Java-1,JavaTM技術(shù)是:1、程序設(shè)計(jì)語言2、計(jì)算平臺(tái)(開發(fā)環(huán)境、應(yīng)用程序環(huán)境),1.2什么是Java-2,一、Java是一種高級(jí)程序設(shè)計(jì)語言,并具有如下特點(diǎn):簡單性、面向?qū)ο蟆⒎植际?、解釋型、健壯性安全性、可移植性、高性能、多線程、動(dòng)態(tài)性,Java虛擬機(jī)(JVM)垃圾收集代碼安全性,1.2什么是Java-3,Java程序先被編譯,然后被解釋執(zhí)行。通過編譯器,可以把Java程序編譯成一種中間代碼字節(jié)碼(Byte-code)。字節(jié)碼是可以被Java解釋器解釋的獨(dú)立于平臺(tái)的代碼,是運(yùn)行在Java虛擬機(jī)(JavaVM)上的機(jī)器代碼指令。通過解釋器,每條Java字節(jié)指令被分析,然后在計(jì)算機(jī)上運(yùn)行。,1.2什么是Java-4,Java字節(jié)碼使得“一次編寫,到處運(yùn)行”成為可能。可以在任何有Java編譯器的平臺(tái)上把Java程序編譯成字節(jié)碼。這個(gè)字節(jié)碼可以運(yùn)行在任何JavaVM上。例如,同一個(gè)Java程序可以運(yùn)行在WindowsNT、Solaris和Macintosh上,甚至這個(gè)JVM可以是個(gè)硬件、一塊芯片。,1.2什么是Java-5,JavaTM虛擬機(jī)(JVM)規(guī)范:Java虛擬機(jī)(JVM)是可運(yùn)行Java字節(jié)碼的假想計(jì)算機(jī)。只要根據(jù)JVM規(guī)格描述將解釋器移植到特定的計(jì)算機(jī)上,就能保證經(jīng)過編譯的任何Java代碼能夠在該系統(tǒng)上運(yùn)行。Java虛擬機(jī)(JVM)規(guī)范是一種用于計(jì)算設(shè)備的規(guī)范,可用不同的方式(軟件或硬件)加以實(shí)現(xiàn)。Java虛擬機(jī)包括一套字節(jié)碼指令集、一組寄存器、一個(gè)棧、一個(gè)垃圾回收堆和一個(gè)存儲(chǔ)方法域。編譯虛擬機(jī)的指令集與編譯微處理器的指令集非常類似。,1.2什么是Java-6,JavaTM內(nèi)存垃圾自動(dòng)回收(GarbageCollector)JavaTM程序設(shè)計(jì)語言使程序員不必負(fù)責(zé)釋放內(nèi)存,因?yàn)樗峁┝艘粋€(gè)后臺(tái)系統(tǒng)級(jí)線程,用于記錄每一個(gè)內(nèi)存分配操作并保留對(duì)每個(gè)內(nèi)存指針的引用計(jì)數(shù)。在Java虛擬機(jī)運(yùn)行時(shí)的空閑周期內(nèi),垃圾收集線程查看是否有引用數(shù)已降到0的內(nèi)存指針。如果有,則清除(解除分配)垃圾收集線程所標(biāo)記的內(nèi)存。垃圾收集在Java應(yīng)用程序的生命期內(nèi)自動(dòng)發(fā)生,因此不必手動(dòng)解除對(duì)內(nèi)存的分配。,1.2什么是Java-7,JavaTM不存在不可信任代碼安全機(jī)制Java程序設(shè)計(jì)語言代碼在計(jì)算機(jī)上實(shí)際運(yùn)行之前已經(jīng)過幾遍測試。字節(jié)碼檢驗(yàn)器對(duì)程序代碼進(jìn)行四遍測試。它確保代碼遵守JVM規(guī)范且不違反系統(tǒng)完整性。如果檢驗(yàn)器完成所有四遍測試并且未返回錯(cuò)誤信息,則可以確信下列情況屬實(shí):1、類遵守JVM規(guī)范的類文件格式。2、沒有違反存取限制。3、代碼不導(dǎo)致操作數(shù)堆棧溢出或下溢。4、所有操作碼的參數(shù)類型正確。5、沒有發(fā)生非法數(shù)據(jù)轉(zhuǎn)換,例如將整型轉(zhuǎn)換為指針。6、對(duì)象字段存取合法。,1.2什么是Java-8,1.2什么是Java-9,二、平臺(tái)是程序運(yùn)行的硬件或軟件環(huán)境。Java平臺(tái)由兩部分組成:Java虛擬機(jī)(JavaVM)(應(yīng)用程序環(huán)境)Java應(yīng)用程序界面(JavaAPI)(開發(fā)環(huán)境)JavaVM,它是Java平臺(tái)的基礎(chǔ),可以移植到各種基于硬件的平臺(tái)上。(Java操作系統(tǒng)或Java芯片)JavaAPI是軟件組件的集合,它們提供了很多有用的功能,如圖形用戶界面(GUI)。JavaAPI被分組為相關(guān)組件的庫(包)。,1.2什么是Java-10,作為一種獨(dú)立于平臺(tái)的環(huán)境,Java比本地代碼慢一些。然而,聰明的編譯器、很好地調(diào)制過的解釋器和即時(shí)字節(jié)碼編譯器(JIT-justintimecompiler)可以在不犧牲可移植性的條件下使Java的表現(xiàn)接近本地代碼。,1.3Java的應(yīng)用領(lǐng)域,Java已經(jīng)漸漸地滲透到各領(lǐng)域1。你可以編寫JavaApplication程序,完成其他語言能完成的所有應(yīng)用程序,而且是跨平臺(tái)的,可應(yīng)用于各行各業(yè);2。你可以編寫JavaApplet程序,可以嵌入在瀏覽器中直接運(yùn)行;3。你可以編寫JavaServlet/JSP程序,將其掛在Apache、tomcat或其它網(wǎng)頁服務(wù)器上;4。你可以編寫EJB/JavaBeans,將其掛在Websphere、Weblogic、IAS或其他應(yīng)用服務(wù)器上;5。你可以編寫JavaMIDlet程序,在手機(jī)上執(zhí)行;,1.4Java的安裝-1,Java的安裝:()JDK(javadevelopmentkit):jdk-1_6_0_008-win.exeJRE(javaruntimeenvironment):jre-1_6_0_008-win.exe環(huán)境變量的設(shè)置:可通過autoexec.bat文件設(shè)置:SETPATH=c:j2sdk1.6bin;.;%PATH%SETCLASSPATH=c:j2sdk1.6lib;.;%CLASSPATH%(其中,JDK安裝在c:j2sdk1.6),1.4Java的安裝-2,開發(fā)工具:一、文字模式(consolemode)的開發(fā)工具:Sun的Java2SoftwareDevelopmnetKit(Java2SDK),最新版JavaTMSE6(v1.6.0,Thenumber6isusedtoreflecttheevolvinglevelofmaturity,stability,scalabilityandsecurityofJavaSE.)。其中提供24個(gè)工具,都放在bin子目錄中,常用的有javac、java、appletviewer等。編輯器可使用記事本。*關(guān)于版本號(hào)的說明:v1.1.8前兩個(gè)數(shù)字代表功能的變更,第三個(gè)(以及以后的數(shù)字),代表錯(cuò)誤修訂版。*J2SE(標(biāo)準(zhǔn)版)J2EE(企業(yè)版)J2ME(微型版),1.4Java的安裝-3,二、GUI模式的開發(fā)工具(graphicsuserinterfacemode):IDE(IntegratedDevelopmentEnvironment,集成開發(fā)環(huán)境):將程序的編輯、編譯、執(zhí)行、調(diào)試等功能整合在一起。如Jcreator2,Freejava2等。RAD(RapidApplicationDevelopment,快速應(yīng)用程序開發(fā)):除具備IDE功能外,可通過可視(Visual)處理的方法擺設(shè)組件(component),所見既所得,并調(diào)整其屬性(property),使編寫程序(特別是用戶接口部分)就像搭積木一樣簡便。如Jbuilder:Borland公司產(chǎn)品;Eclipse:一種開源的、可擴(kuò)展IDE,是免費(fèi)的,我們要使用的集成開發(fā)環(huán)境是Eclipse。,1.5一個(gè)Java程序的開發(fā)過程,1.5.1一個(gè)Java應(yīng)用程序-1,第一個(gè)“HelloWorld”應(yīng)用程序按照以下步驟,可以創(chuàng)建一個(gè)Java應(yīng)用程序。/用C語言實(shí)現(xiàn)#includeMain()println(“HelloWorld”);/用C+語言實(shí)現(xiàn)#includevoidmain()coutjavacBoy.java運(yùn)行JavaApplet由瀏覽器來運(yùn)行,因此我們必須編寫一個(gè)超文本文件(含有applet標(biāo)記的web頁)通知瀏覽器來運(yùn)行這個(gè)JavaApplet。以下是一個(gè)簡單的html文件:Boy.html如果瀏覽器不支持JavaApplet程序(比如WinXP自帶的IE),你也可以使用SDK提供的appletviewer來調(diào)試小程序,如,在DOS命令行執(zhí)行:c:1000appletviewerBoy.html,總結(jié):,1、一個(gè)java源文件是由若干個(gè)類組成的。一個(gè)java應(yīng)用程序必須有一個(gè)類含有main方法,這個(gè)類稱為應(yīng)用程序的主類。Main方法是程序開始執(zhí)行的位置。2、帶public的類稱為公共類,一個(gè)源文件中只能有一個(gè)類是public的。3、源文件的命名規(guī)則:源文件只有一個(gè)類,用類名做源文件名;如有多個(gè)類,有一個(gè)public類,用該類名做源文件名,沒有public類,用任意類名做源文件名。類名第一個(gè)字母大寫,后面小寫,源文件擴(kuò)展名為.java當(dāng)有多個(gè)類時(shí),運(yùn)行java命令后的類名必須是包含了main方法的那個(gè)類的名字,即主類名字,如例2。4、一個(gè)java小應(yīng)用程序也是由若干個(gè)類組成的,一個(gè)小程序不再需要main方法,但必須有且只有一個(gè)類擴(kuò)展了Applet類,即它是Applet類的子類。把該類叫小程序的主類,主類必須是public的。,復(fù)習(xí)思考題:(1)試分析Java的跨平臺(tái)機(jī)制?(2)如何設(shè)置Java中的環(huán)境變量?,1.6Java的反編譯-1,控制臺(tái)下的:JAD的使用圖形用戶界面的:FrontEnd的使用*使用混淆器加密你的Java程序。,1.7Java的文檔注釋方法-1,在“/*”和“*/”之間的內(nèi)容都是文檔注釋。當(dāng)程序員編完程序以后,可以通過JDK提供的javadoc命令(javacdoc文件名.java),生成所編程序的API文檔。該API文檔以HTML文件的形式出現(xiàn),與Java幫助文檔的風(fēng)格與形式完全一致。例如下面的DocTest.java文件:/*這是一個(gè)文檔注釋的例子,主要介紹下面這個(gè)類*authorwalkman*version1.1.482008/09/1*/publicclassDocTest/*變量注釋,下面這個(gè)變量主要是充當(dāng)整數(shù)計(jì)數(shù)*/publicinti;/*方法注釋,下面這個(gè)方法的主要功能是計(jì)數(shù)*/publicvoidcount(),1.8Java的學(xué)習(xí)方法-1,在理解課堂教授內(nèi)容的基礎(chǔ)上,盡量獨(dú)立完成課后習(xí)題。對(duì)于疑難問題,可采用如下辦法解決:a.參考教材配套書籍或其它相關(guān)書籍,上機(jī)調(diào)試程序,自行解決。問人之前,先問自己。b.結(jié)成學(xué)習(xí)小組(3人左右),互助學(xué)習(xí);c.通過互聯(lián)網(wǎng)的技術(shù)社區(qū)或BBS,向高手請(qǐng)教;CSDN論壇,官方網(wǎng)站:,1.8Java的學(xué)習(xí)方法-2,向上延伸,向下延伸,向旁延伸當(dāng)你發(fā)現(xiàn)你已經(jīng)可以掌握此程序語言基本知識(shí)之后,你可以選擇:1、向上延伸:學(xué)習(xí)對(duì)象導(dǎo)向分析設(shè)計(jì)、UML、DesignPatterns、以及軟件工程。培養(yǎng)自己具有做大型項(xiàng)目的能力。2、向下深入:深入了解內(nèi)部底層的機(jī)制,例如JVM,操作系統(tǒng)(甚至硬件)內(nèi)部。3、向旁延伸:學(xué)習(xí)不同的API,例如:多媒體、數(shù)據(jù)庫、企業(yè)運(yùn)算等等,擴(kuò)展自己的編程能力。另外,數(shù)據(jù)結(jié)構(gòu)、算法等基礎(chǔ)也很重要。,在人月神化中,F(xiàn).Brooks對(duì)他自己做的軟件項(xiàng)目描述為:“史前巨獸在柏油坑中做垂死前的掙扎掙扎得越厲害,柏油就會(huì)黏的越緊,沒有任何的猛獸力量夠強(qiáng),技巧夠高,得以逃過終至滅頂?shù)拿\(yùn)。在過去的十年,大型系統(tǒng)的程序設(shè)計(jì)工作就陷進(jìn)了一個(gè)像這樣的柏油坑中。”在QualitySoftwreManagementII中,G.Weinberg這樣來描述他自己做軟件項(xiàng)目的經(jīng)驗(yàn):“你身處湖心當(dāng)中,劃著一艘小船,船底有幾個(gè)漏洞,水慢慢的滲進(jìn)來。你想要去堵住漏洞,但卻遭到一大群仲夏兇惡蚊子的攻擊。能夠隨時(shí)注意到是否有問題的發(fā)生,或更進(jìn)一步能預(yù)先加以防范(修補(bǔ)漏洞),理論上說來還不錯(cuò),但是你得一直忙著去干昨日的問題(不停地打蚊子),完全抽不出空來實(shí)現(xiàn)分毫的理論。”TomDeMarco人件,管理,不僅僅是技術(shù),更是充滿人文精神的藝術(shù)。,1.9Java的參考書籍,Sun公司編著Java程序員認(rèn)證教材SL-110Sun公司編著Java程序員認(rèn)證教材SL-275機(jī)械工業(yè)出版社Java編程思想Java程序設(shè)計(jì)大學(xué)教程國外計(jì)算機(jī)經(jīng)典教材Java2實(shí)用教程Java夜未眠,1.10Java認(rèn)證考試-1,Java認(rèn)證考試(Java方面,Sun推出七項(xiàng)認(rèn)證):-SunCertifiedJavaAssociate(SCJA)-SunCertifiedJavaProgrammer(SCJP)-SunCertifiedJavaDeveloper(SCJD)-SunCertifiedWebComponentDeveloper(SCWCD)-SunCertifiedBusinessComponentDeveloper(SCBCD)-SunCertifiedDeveloperForJavaWebServices(SCDJWS)-SunCertifiedMobileApplicationDeveloper(SCMAD)-SunCertifiedEnterpriseArchitect(SCEA),1.10Java認(rèn)證考試-2,1.10Java認(rèn)證考試-3,SCJP(SunCertifiedJavaprogrammer),測試Java編程的觀念和能力,內(nèi)容偏重于Java語法和JDK內(nèi)容。共59題復(fù)選和填充,2小時(shí),61%及格;SCJD(SunCertifiedJavadeveloper)測試Java軟件開發(fā)的進(jìn)階技能。分兩階段,第一階段是程序設(shè)計(jì)題,不限時(shí),80%進(jìn)入第二階段,5-10題簡答,90分鐘,對(duì)70%通過認(rèn)證;SCWD(SunCertifiedWebComponentDeveloperforJ2EEPlatform)內(nèi)容覆蓋Servlet與JSP。共60題復(fù)選和填空,2小時(shí),70%及格;SCAJ(SunCertifiedEnterpriseArchitectforJ2EE)測試對(duì)于J2EE架構(gòu)的熟悉程度以及系統(tǒng)整合能力。分三個(gè)階段,第一階段,48復(fù)選題,75分鐘,68%進(jìn)入下個(gè)階段。第二階段是系統(tǒng)設(shè)計(jì)專題,時(shí)間不限,70%進(jìn)入下個(gè)階段。第三階段是4個(gè)申論題,90分鐘,通過即可得到認(rèn)證。所有考試都是英文試題。最新信息:,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- Java 語言程序設(shè)計(jì)
鏈接地址:http://www.szxfmmzy.com/p-11496887.html