《語(yǔ)言及其應(yīng)用》_第1頁(yè)
《語(yǔ)言及其應(yīng)用》_第2頁(yè)
《語(yǔ)言及其應(yīng)用》_第3頁(yè)
《語(yǔ)言及其應(yīng)用》_第4頁(yè)
《語(yǔ)言及其應(yīng)用》_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Java語(yǔ)言及其應(yīng)用

1.上課用書陳會(huì)安,JavaSE6程式設(shè)計(jì)範(fàn)例

教本,學(xué)貫出版社,2008年

(ISBN:978-986-6800-35-1)

2.請(qǐng)遵守智慧財(cái)產(chǎn)權(quán)觀念,不得非法影印教科書這門課不是營(yíng)養(yǎng)學(xué)分,歡迎大家來(lái)修,但請(qǐng)務(wù)必投入對(duì)應(yīng)的時(shí)間與精力3.課程內(nèi)容大綱(1/2)Java基礎(chǔ)、環(huán)境安裝與設(shè)定(書第一章)撰寫一個(gè)簡(jiǎn)單的程式物件與類別基本資料型態(tài)應(yīng)用程式及繪圖判斷敘述重複敘述設(shè)計(jì)類別測(cè)試與除錯(cuò)4.內(nèi)容大綱(2/2)介面與多型(Polymorphism)事件處理繼承圖形介面元件例外處理(ExceptionHandling)資料流(I/OStreams)Java在網(wǎng)路通訊的應(yīng)用*5.上課及評(píng)分方式老師講解、討論程式作業(yè)(若干次,在家自行練習(xí)或課堂中練習(xí),視情況實(shí)施)期中考試四次(現(xiàn)場(chǎng)上機(jī),17:00~19:00)3/18(四)(15%)4/01(四)(20%)4/22(四)(20%)(14:00~19:00)5/13(四)(20%)期末考一次(現(xiàn)場(chǎng)上機(jī),14:00~19:00)5/27(三)(25%)6.Java程式語(yǔ)言Java是90年代中期才開始風(fēng)行的程式語(yǔ)言由Sun(昇陽(yáng))公司開發(fā)的一種使用在家電控

制的軟體技術(shù),由JamesGosling帶領(lǐng)計(jì)劃開

發(fā)一種全新的程式語(yǔ)言,不受硬體的限制,適

用於各種不同平臺(tái)原先打算將C++語(yǔ)言擴(kuò)充成一種新的程式語(yǔ)言,卻困難重重重新創(chuàng)造一種新的電腦語(yǔ)言,發(fā)展初期並不順利1994年WWW迅速成為Internet當(dāng)紅的資源服務(wù),它們發(fā)現(xiàn)Java語(yǔ)言在WWW擁有無(wú)比的潛力有一說(shuō)法:超過(guò)40%的企業(yè)在選用程式設(shè)計(jì)人才時(shí)優(yōu)先考慮擅長(zhǎng)Java的人員SCJP(SunCertifiedJavaProgrammer)是很有用的認(rèn)證7.Java與C/C++結(jié)構(gòu)上的差異Java的架構(gòu)與C/C++雷同,除了:Java的函式(method)、介面(interface)全都包在物件中Java

支援單一繼承,Java物件的根類別是java.lang.ObjectJava

沒(méi)有前置處理器(preprocessor)Java

沒(méi)有指標(biāo)(pointer)Java

沒(méi)有g(shù)oto

敘述,也沒(méi)有struct

union

語(yǔ)法Java

沒(méi)有多重繼承與運(yùn)算子覆載(operatoroverloading)Java

具有記憶體回收(garbagecollection)功能Java具下載程式的網(wǎng)路功能。配合WebServer及網(wǎng)頁(yè)瀏覽器的運(yùn)作,可將applet自遠(yuǎn)端之WebServer下載到本機(jī)網(wǎng)頁(yè)瀏覽器上執(zhí)行,增加其應(yīng)用的空間Java

提供便利的網(wǎng)路程式設(shè)計(jì)工具8.Java概觀(1/2)跨平臺(tái):寫一份程式不需重新編譯即可在Windows、Unix、Linux甚至PDA上面執(zhí)行物件導(dǎo)向:是廣泛使用的程式規(guī)格,方便釐清和解答問(wèn)題簡(jiǎn)單:語(yǔ)言本身相當(dāng)聰明,去除掉了許多C++的問(wèn)題,使得程式設(shè)計(jì)師除錯(cuò)的時(shí)間大大減少功能強(qiáng)大:Java語(yǔ)言內(nèi)含大量的網(wǎng)路處理、I/O處理、繪圖等功能,而且還可以透過(guò)下載套件的方式加強(qiáng)功能開放:全世界有數(shù)以千萬(wàn)計(jì)的Java程式設(shè)計(jì)師不斷的強(qiáng)化Java的功能免費(fèi):Java語(yǔ)言完全免費(fèi),甚至可以取得原始碼多工動(dòng)態(tài)載入安全性高:內(nèi)建安全機(jī)制9.Java概觀(2/2)原始碼.java檔案編譯(compile)Bytecode

執(zhí)行檔.class檔案執(zhí)行JavaVirtualMachine10.Bytecode通過(guò)編譯的Java執(zhí)行檔(副檔名為.class)的格式稱做bytecode(位元碼)Bytecode與系統(tǒng)機(jī)器無(wú)關(guān)(machineindependent)一般C或C++的程式經(jīng)過(guò)編譯後,會(huì)視平臺(tái)不同而有不同的格式,因此不能跨平臺(tái)。而bytecode不論在任何平臺(tái)上格式都一樣,所以可以跨平臺(tái)11.Java虛擬機(jī)器一般程式硬體作業(yè)系統(tǒng)硬體作業(yè)系統(tǒng)JVMJava程式Java程式能夠執(zhí)行的最關(guān)鍵的環(huán)節(jié)就是Java虛擬機(jī)器(JavaVirtualMachine,JVM)編譯好的Java執(zhí)行檔並不能直接執(zhí)行,而是必須交由JVM解譯(interpret)並執(zhí)行不同的平臺(tái)必須有不同的JVM,因此bytecode可以跨平臺(tái),但JVM不能跨平臺(tái)12.Java的特色:跨平臺(tái)PCUNIXMacJava程式CompileJavaBytecodeJavaVMForPCJavaVMForUNIXJavaVMForMacintoshWriteOnce,RunAnywhere(WORA)13.Java的特色:物件導(dǎo)向(1/3)什麼是物件導(dǎo)向(Object-Oriented)不使用物件導(dǎo)向(程序?qū)颍┟枋銮嘟烦炊垢〕銮嘟?00g,用刀切成細(xì)絲,過(guò)油取出豆腐300g,切丁,用醬油、酒、

黑醋醃製30分鐘起油鍋、放入豆腐炒及青椒大火快炒

1分半拿出太白粉、水調(diào)在一起,這個(gè)稱為

芡汁將芡汁倒入鍋中攪拌,會(huì)產(chǎn)生黏稠現(xiàn)象

這叫芶芡完成使用物件導(dǎo)向描述一件事青椒炒豆腐

青椒

數(shù)量:500g

處理:用刀切成細(xì)絲,過(guò)油

豆腐

數(shù)量:300g

處理:切丁,用醬油、酒、黑醋醃製

芡汁

製作:太白粉調(diào)上適量的水

芶芡:將芡汁倒入鍋中

青椒處理好、豆腐處理好、芡汁製作好,

放入鍋中快炒1分半後用芡汁芶芡即可。14.Java的特色:物件導(dǎo)向(2/3)什麼是物件導(dǎo)向先定義好參與這件事的物品有哪些(這些物品叫做“物件”)再定義這些物品所需的數(shù)量及行為(這些數(shù)量及行為叫做

“屬性”與“方法”)接下來(lái)就可用物品間的互動(dòng)行為來(lái)描述整件事情是如何發(fā)生的。

(這部份的描述稱為“主程式”)青椒炒豆腐

青椒

數(shù)量:500g

處理:用刀切成細(xì)絲,過(guò)油

豆腐

數(shù)量:300g

處理:切丁,用醬油、酒、黑醋醃製

芡汁

製作:太白粉調(diào)上適量的水

芶芡:將芡汁倒入鍋中

青椒處理好、豆腐處理好、芡汁製作好,

放入鍋中快炒1分半後用芡汁芶芡即可。15.Java的特色:物件導(dǎo)向(3/3)Java使用“類別”(Class)來(lái)實(shí)作物件的概念class青椒炒肉絲{

青椒處理好

豆腐處理好

芡汁製作好

青椒

+豆腐炒1分半用芡汁芶芡即可}主程式物件class青椒{

數(shù)量

=500g

處理法

{…}}青椒物件class豆腐{

數(shù)量

=300g

處理法

{…}}豆腐物件class芡汁{

製作法

{…}

芶芡法

{…}}芡汁物件16.程序式程式語(yǔ)言物件導(dǎo)向程式語(yǔ)言Function1(a,b)Function3()Function2(c)Function4(a,b)OBJ1OBJ3OBJ2Java的特色:物件導(dǎo)向vs.程序?qū)虺淌秸Z(yǔ)言17.Java的特色:多工(1/2)何謂多工(Multi-tasking)可將一個(gè)程式分成數(shù)份,讓各部份能同時(shí)被執(zhí)行18.Java的特色:多工(2/2)Java利用“執(zhí)行緒”(Thread)來(lái)實(shí)作多工執(zhí)行緒1執(zhí)行緒2執(zhí)行緒319.Java的特色:動(dòng)態(tài)載入其它語(yǔ)言程式開始執(zhí)行後所有物件就一起載入。一旦開始執(zhí)行,就無(wú)法做出任何變更。Java語(yǔ)言當(dāng)需要某個(gè)物件時(shí),才將該物件載入。這種特質(zhì),讓動(dòng)態(tài)抽換物件變得可能。20.Java的特色:穩(wěn)固性Java沒(méi)有記憶體指標(biāo)(pointer)Java資料型別的轉(zhuǎn)換有十分嚴(yán)格的檢查Java提供例外處理的機(jī)制來(lái)防護(hù)當(dāng)程式發(fā)生錯(cuò)誤時(shí)的破壞情況21.Java的特色:具自動(dòng)記憶體管理功能Java不提供類似C中malloc()

及free()

之函數(shù)利用new()

產(chǎn)生新物件,程式設(shè)計(jì)師不必?fù)?dān)心何時(shí)應(yīng)收回?zé)o用的記憶體空間Java之執(zhí)行系統(tǒng)會(huì)執(zhí)行g(shù)arbagecollection,自動(dòng)回收已不再使用的物件22.Java開發(fā)工具(JavaDevelopmentKit,JDK)/網(wǎng)址23.Java開發(fā)工具(JavaDevelopmentKit,JDK)24.選擇正確套件NetBeanIDE(IntegratedDevelopmentEnvironment)JDK(JavaDevelopmentKit)JRE(JavaRuntime

Environment)JavaVM

(JVM)JavaRuntimeClassesJavaDocs25.安裝JDK詳細(xì)安裝步驟另見.tw/0024/javaclass/unit1/java2/java_install.htm從

下載MSWindows平臺(tái)使用Unix/LinuxMacOS安裝設(shè)定環(huán)境變數(shù)(見下下頁(yè))26.JDK的主要內(nèi)容javac.exe──Javacompiler(編譯器)用來(lái)將Java的原始碼編譯成為bytecodejava.exe──Javainterpreter(解譯器)用來(lái)執(zhí)行bytecode,實(shí)際上即為JVMappletviewer──Javaapplet瀏覽器javadoc.exe──文件產(chǎn)生器用來(lái)自動(dòng)產(chǎn)生原始碼的說(shuō)明文件jdb──Javadebugger(除錯(cuò)器)javah──C標(biāo)頭產(chǎn)生器javap──Java反組譯器classes.zipsrc.zip27.28.29.加入;.;c:\ProgramFiles\Java\jdk1.6.0_03\bin30.執(zhí)行範(fàn)例:“Helloworld”可使用任何編輯器撰寫下列程式碼

publicclasshello{publicstaticvoidmain(String[]args){System.out.println(“Helloworld..”);}}以hello.java為檔名儲(chǔ)存執(zhí)行文字的主的(命令列)功能鍵盤敲入javachello.java…接著你可以在相同的路徑上看到一名為hello.class的檔案鍵盤敲入javahello(執(zhí)行hello.class)在此檔案中找出“publicstaticvoidmain(String[]arg)”

這個(gè)方法並且從這裡開始啟動(dòng)JVM,把class放在裡面並執(zhí)行結(jié)束JVM31.32.使用提示命令字元33.34.Java歷代版本沿革Java1.0Java1.1Java1.2Java1.3Java1.4Java1.5(Java5.0)Java1Java235.Java套餐(Package)JavaSE(StandardEdition)JavaEE(EnterpriseEdition)JavaME(MicroEdition)同一個(gè)版本的Java,又分為三種套餐標(biāo)準(zhǔn)版適用於開發(fā)用戶端程式企業(yè)版適用於開發(fā)伺服器端程式手持設(shè)備版適用於開發(fā)手機(jī)、無(wú)線設(shè)

備程式Jini(超微小型用)(與Genie同音)

可運(yùn)用於超微小世界(如資料與科學(xué)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論