九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

java語(yǔ)言程序設(shè)計(jì)(第二版).ppt

  • 資源ID:11496906       資源大?。?span id="24d9guoke414" class="font-tahoma">726KB        全文頁(yè)數(shù):53頁(yè)
  • 資源格式: PPT        下載積分:14.9積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開(kāi)放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要14.9積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫(xiě)的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開(kāi),此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

java語(yǔ)言程序設(shè)計(jì)(第二版).ppt

第二章面向?qū)ο?OO)程序設(shè)計(jì)概念,參考書(shū):BruceEckelThinkinginJava,程序設(shè)計(jì)的演變,機(jī)器語(yǔ)言匯編語(yǔ)言面向過(guò)程的語(yǔ)言和結(jié)構(gòu)化程序設(shè)計(jì)程序算法數(shù)據(jù)結(jié)構(gòu)(C)面向?qū)ο蟪绦蛟O(shè)計(jì)程序?qū)ο笙鬟f(Java,C+,C#),抽象的進(jìn)步,所有編程語(yǔ)言的最終目的都是提供一種“抽象”方法匯編語(yǔ)言是對(duì)基礎(chǔ)機(jī)器的少量抽象命令式語(yǔ)言(如FORTRAN,BASIC和C)是對(duì)匯編語(yǔ)言的一種抽象OOP是更高層的抽象,面向?qū)ο蟪绦蛟O(shè)計(jì)方法的來(lái)源,大英百科全書(shū)描述了人類在認(rèn)識(shí)和理解現(xiàn)實(shí)世界的過(guò)程中普遍運(yùn)用的三個(gè)法則:1、區(qū)分對(duì)象及其屬性,例如,區(qū)分一棵樹(shù)和樹(shù)的大小或它與其它對(duì)象的空間關(guān)系。2、區(qū)分整體對(duì)象及其組成部分。例如,區(qū)分一棵樹(shù)和樹(shù)枝。3、形成并區(qū)分不同對(duì)象的類。例如,形成所有樹(shù)的類和所有石頭的類,并區(qū)分它們。,面向?qū)ο蟪绦蛟O(shè)計(jì)方法的特征,(1)所有東西都是對(duì)象??蓪?duì)象想象成一種新型變量;它保存著數(shù)據(jù),但可要求它對(duì)自身進(jìn)行操作。理論上講,可從要解決的問(wèn)題身上提出所有概念性的組件,然后在程序中將其表達(dá)為一個(gè)對(duì)象。,(2)程序是一大堆對(duì)象的組合;通過(guò)消息傳遞,各對(duì)象知道自己該做些什么。為了向?qū)ο蟀l(fā)出請(qǐng)求,需向那個(gè)對(duì)象“發(fā)送一條消息”。更具體地講,可將消息想象為一個(gè)調(diào)用請(qǐng)求,它調(diào)用的是從屬于目標(biāo)對(duì)象的一個(gè)子例程或函數(shù)。,(3)每個(gè)對(duì)象都有自己的存儲(chǔ)空間,可容納其他對(duì)象。或者說(shuō),通過(guò)封裝現(xiàn)有對(duì)象,可制作出新型對(duì)象。所以,盡管對(duì)象的概念非常簡(jiǎn)單,但在程序中卻可達(dá)到任意高的復(fù)雜程度。,(4)每個(gè)對(duì)象都有一種類型。根據(jù)語(yǔ)法,每個(gè)對(duì)象都是某個(gè)“類”的一個(gè)“實(shí)例”。其中,“類”(Class)是“類型”(Type)的同義詞。一個(gè)類最重要的特征就是“能將什么消息發(fā)給它?”。,(5)同一類所有對(duì)象都能接收相同的消息。這實(shí)際是別有含義的一種說(shuō)法,大家不久便能理解。由于類型為“圓”(Circle)的一個(gè)對(duì)象也屬于類型為“形狀”(Shape)的一個(gè)對(duì)象,所以一個(gè)圓完全能接收形狀消息。這意味著可讓程序代碼統(tǒng)一指揮“形狀”,令其自動(dòng)控制所有符合“形狀”描述的對(duì)象,其中自然包括“圓”。這一特性稱為對(duì)象的“可替換性”,是OOP最重要的概念之一。,實(shí)體,抽象數(shù)據(jù)類型,類,對(duì)象,白馬非馬論,公孫龍是名家的代表人物,他最有名的辯論是“白馬非馬”的假說(shuō)。一天,他牽一匹白馬出關(guān)被阻,公孫龍便以白馬非馬的命題與之辯論,守關(guān)的人辯不過(guò)他,公孫龍就牽著馬出關(guān)去了(或說(shuō),他還是不得出關(guān))。公孫龍說(shuō),白馬為非馬者,言白所以名色,言馬所以名形也;色非形,形非色也。夫言色則形不當(dāng)與,言形則色不宜從,今合以為物,非也。如求白馬于廄中,無(wú)有,而有驪色之馬,然不可以應(yīng)有白馬也。不可以應(yīng)有白馬,則所求之馬亡矣;亡則白馬竟非馬。公孫龍的話大意是說(shuō):"馬"指的是馬的形態(tài),"白馬"指的是馬的顏色,而形態(tài)不等于顏色,所以白馬不是馬。,其他聲音(論面向?qū)ο蠛徒Y(jié)構(gòu)化),1、許多人一談到結(jié)構(gòu)化,就非常不屑地說(shuō),那是過(guò)了時(shí)的東西,現(xiàn)在流行的是面向?qū)ο?等等.真的是這樣嗎?我認(rèn)為沒(méi)有,結(jié)構(gòu)化的設(shè)計(jì)思想并沒(méi)有消失,而是一直在頑強(qiáng)的生存著,以后也會(huì)生存下去.結(jié)構(gòu)化的思想和面向?qū)ο蟮乃枷胫皇强紤]同樣一個(gè)問(wèn)題的兩個(gè)不同角度而已,他們本身并沒(méi)有那個(gè)好那個(gè)不好的問(wèn)題,當(dāng)然具體到每個(gè)系統(tǒng)設(shè)計(jì)人員,就要受限制與自己所接受的教育,從而可能會(huì)有自己的判斷和喜好.我曾經(jīng)接觸過(guò)幾個(gè)老資格的程序員,他們?cè)谥袊?guó)剛剛引進(jìn)計(jì)算機(jī)時(shí)就開(kāi)始進(jìn)行大規(guī)模的軟件編程,他們對(duì)于系統(tǒng)的把握和理解確實(shí)是非常深刻的,盡管是結(jié)構(gòu)化的.系統(tǒng)分析本身的最終目的,是為了真正理解系統(tǒng),而采用那個(gè)角度,用那種方法來(lái)理解系統(tǒng)只是一個(gè)手段問(wèn)題,不是根本問(wèn)題.,2、不敢茍同,你沒(méi)有意識(shí)到兩者本質(zhì)上的不同,結(jié)構(gòu)化方法的缺陷(或者叫硬傷)使得它逐漸被淘汰,,3、我來(lái)打個(gè)比方,面向?qū)ο蠛徒Y(jié)構(gòu)化好比中醫(yī)和西醫(yī)一樣,只是兩種不同的理論體系一樣,但病人是一個(gè),他們本質(zhì)上是不同的,但其處理的問(wèn)題是一致的.難道中醫(yī)能看病,就意味著西醫(yī)不能看病嗎?請(qǐng)問(wèn),結(jié)構(gòu)化的缺陷何在?,4、“天圓地方”是足夠正確的,在人們沒(méi)有見(jiàn)到大海之前“地心說(shuō)”是足夠正確的,在人們沒(méi)有感覺(jué)到行星軌道的復(fù)雜之前“日心說(shuō)”是足夠正確的,在人們沒(méi)有感覺(jué)到更大星系的存在之前.牛頓力學(xué)是足夠正確的,在人們沒(méi)有計(jì)算超大尺度和超小尺度之前結(jié)構(gòu)化也是足夠的,在軟件開(kāi)發(fā)不得不把“復(fù)用”、“構(gòu)件”擺在重要位置之前,5、老資格的結(jié)構(gòu)化程序員確實(shí)是>面向?qū)ο笮率郑拖笏惚P(pán)老手速度比計(jì)算器新手快一樣,有的毛筆老手也會(huì)寫(xiě)得比鋼筆新手快又好。,6、知不知道并不是有了超大超小之后,牛頓力學(xué)就不對(duì)了.你拿量子力學(xué)或者超弦理論來(lái)算火車什么時(shí)候到站估計(jì)永遠(yuǎn)得不出結(jié)果來(lái).只有適用的才是最好的,沒(méi)有萬(wàn)能藥用來(lái)打蒼蠅估計(jì)蒼蠅拍比原子彈更好.,7、如果你說(shuō)的是世界觀,我同意OO和結(jié)構(gòu)化沒(méi)有優(yōu)劣之分,這屬于哲學(xué)范疇;但我想,我們是在討論技術(shù)和工程問(wèn)題,在這一點(diǎn)上,無(wú)論理論還是實(shí)踐,OO是主流,勝于結(jié)構(gòu)化,也早有定論。市場(chǎng)已經(jīng)做出了回答。在這10年間新的軟件基本上都在用OO方法,而結(jié)構(gòu)化只被限制小范圍、某些特定的應(yīng)用上。我離開(kāi)大學(xué)后就再也沒(méi)有接觸過(guò)結(jié)構(gòu)化,OO完全可以取代它。,8、回頭看一看OO的歷史,就會(huì)發(fā)現(xiàn)OO的出現(xiàn)是為了適應(yīng)軟件工程的發(fā)展。隨著項(xiàng)目規(guī)模的不斷擴(kuò)大,結(jié)構(gòu)化已經(jīng)力不從心了。引入OO的方法是為了將復(fù)雜的問(wèn)題簡(jiǎn)單化,可以理解成為另一種方式的自頂向下、逐步細(xì)化。分解到一定程度后就可以采用結(jié)構(gòu)化的方法去實(shí)現(xiàn)了。所以面向?qū)ο笈c結(jié)構(gòu)化不是格格不入的,而是相輔相成的。用牛頓力學(xué)和相對(duì)論比可能不太合適,是不是可以比喻成雙腳和車子:短距離步行還可以,距離遠(yuǎn)了走起來(lái)可是要累死了;但是要想回家還得下車來(lái)走兩步;所以走路永遠(yuǎn)不過(guò)時(shí),開(kāi)車就是比走路快!,哈哈,請(qǐng)同學(xué)考慮如何編程實(shí)現(xiàn)這個(gè)記事本程序?難度有多大?,面向?qū)ο蟪绦蛟O(shè)計(jì)是使用類和對(duì)象將現(xiàn)實(shí)世界中真實(shí)的或抽象的實(shí)體在程序中建立模型。,面向?qū)ο蟪绦蛟O(shè)計(jì),面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念,什么是對(duì)象(Object)什么是消息(Message)什么是類(Class)什么是繼承(Inheritance)什么是接口(Interface),什么是對(duì)象(Object),對(duì)象的概念軟件對(duì)象是現(xiàn)實(shí)對(duì)象在程序中的模型現(xiàn)實(shí)世界對(duì)象的兩個(gè)特征:狀態(tài)(state)與行為(behavior).軟件對(duì)象也具有狀態(tài)與行為:狀態(tài):以一個(gè)或多個(gè)變量保存行為:用方法實(shí)現(xiàn)行為,對(duì)象的定義對(duì)象由變量與相關(guān)的方法結(jié)合起來(lái)構(gòu)成的。,對(duì)象(Object)一組數(shù)據(jù)及其對(duì)這些數(shù)據(jù)的操作過(guò)程對(duì)象中的數(shù)據(jù)稱為域(Field)例:plane1.weight對(duì)象中的操作過(guò)程稱為方法(Method)例:plane1.move(),換種說(shuō)法來(lái)幫助理解,classCarintcolor_number;intdoor_number;intspeed;voidbrake()voidspeedUp();voidslowDown(),對(duì)象實(shí)例一個(gè)特定的對(duì)象稱為實(shí)例。,對(duì)象的使用-用句柄操縱對(duì)象每種編程語(yǔ)言都有自己的數(shù)據(jù)處理方式。有些時(shí)候,程序員必須時(shí)刻留意準(zhǔn)備處理的是什么類型。您曾利用一些特殊語(yǔ)法直接操作過(guò)對(duì)象,或處理過(guò)一些間接表示的對(duì)象嗎(C或C+里的指針)?所有這些在Java里都得到了簡(jiǎn)化,任何東西都可看作對(duì)象。因此,我們可采用一種統(tǒng)一的語(yǔ)法,任何地方均可照搬不誤。但要注意,盡管將一切都“看作”對(duì)象,但操縱的標(biāo)識(shí)符實(shí)際是指向一個(gè)對(duì)象的“句柄”(Handle)。,可將這一情形想象成用遙控板(句柄)操縱電視機(jī)(對(duì)象)。只要握住這個(gè)遙控板,就相當(dāng)于掌握了與電視機(jī)連接的通道。但一旦需要“換頻道”或者“關(guān)小聲音”,我們實(shí)際操縱的是遙控板(句柄),再由遙控板自己操縱電視機(jī)(對(duì)象)。如果要在房間里四處走走,并想保持對(duì)電視機(jī)的控制,那么手上拿著的是遙控板,而非電視機(jī)。,對(duì)象的封裝含義:對(duì)象的變量置于對(duì)象方法的包裹之中,被對(duì)外隱藏。優(yōu)點(diǎn):模塊化:不同對(duì)象代碼之間有一定獨(dú)立,對(duì)象可以在系統(tǒng)中方便移動(dòng)。信息隱藏:保證修改對(duì)象信息時(shí),不會(huì)對(duì)訪問(wèn)它的對(duì)象產(chǎn)生影響。,什么是消息,對(duì)象之間通過(guò)發(fā)送消息進(jìn)行交互與通信。,消息由三部分構(gòu)成:接收消息的對(duì)象方法名稱方法的參數(shù),消息(Message)對(duì)象通過(guò)消息相互交流消息傳遞:發(fā)送消息的對(duì)象,接受消息的對(duì)象,傳遞的參數(shù),調(diào)用的方法消息傳遞(SendMessage)是方法調(diào)用(CallMethod):car1.accelerate(),換種說(shuō)法,消息示例,消息機(jī)制的好處對(duì)象的行為是通過(guò)它的方法表達(dá)的,所以消息傳遞支持對(duì)象之間的所有交互。相互交換消息的對(duì)象可以在不同的進(jìn)程,甚至在不同的機(jī)器上。,什么是類(class),Aclassisablueprint,orprototype,thatdefinesthevariablesandthemethodscommontoallobjectsofacertainkind.一個(gè)類是一個(gè)藍(lán)圖或樣板,它定義了某一特定類的所有對(duì)象都具有的變量與方法。,類(Class)定義一類對(duì)象的模板,相當(dāng)于類型(Type),例:類Plane對(duì)象稱為類的實(shí)例(Instance),例:對(duì)象plane1是類Plane的一個(gè)實(shí)例,換種說(shuō)法,類的結(jié)構(gòu),類示例-自行車,類的實(shí)例化示例,類中的變量與方法變量實(shí)例變量(instancevariable)包含特定對(duì)象的狀態(tài)類變量(classvariable)由類的所有實(shí)例共享方法實(shí)例方法(instancemethod)通過(guò)實(shí)例進(jìn)行訪問(wèn)的方法。類方法(classmethod)通過(guò)類進(jìn)行調(diào)用的方法。,什么是繼承,繼承的子類和父類子類Aclassthatisderivedfromaparticularclass.從某個(gè)特定類派生出來(lái)的類。父類Aclassfromwhichaparticularclassisderived.派生出某個(gè)特定類的類。,繼承的含義子類繼承父類的狀態(tài)與方法。子類可以增加新的變量和方法。子類可以重寫(xiě)(Override)繼承來(lái)的方法。注:繼承關(guān)系可以有多層,子類要繼承它所有父類的方法與狀態(tài)。,classCarintcolor_number;intdoor_number;intspeed;push_break()add_oil(),classTrash_CarextendsCardoubleamount;fill_trash(),繼承例,classCarintcolor_number;intdoor_number;intspeed;push_break()speed=0;add_oil(),classTrash_CarextendsCardoubleamount;fill_trash()push_break()speed=speed-10;,方法的覆蓋例,方法的重載(多態(tài)性)在同一個(gè)類中至少有兩個(gè)方法用同一個(gè)名字,但有不同的參數(shù)。,Java中的Object類(根類)Java中的Object類是最頂層的類,所有其他的類都是它直接或間接的子類。類型是Object的變量可以指向任意的對(duì)象。Object提供了運(yùn)行在JVM中的所有對(duì)象都需要的行為(方法)。,繼承的優(yōu)點(diǎn)通過(guò)繼承可以重用父類中的代碼。程序員可以定義含有一般行為的抽象類。抽象類中的很多方法是沒(méi)有實(shí)現(xiàn)的??梢栽诔橄箢惖幕A(chǔ)上定義特定的子類,實(shí)現(xiàn)具體的細(xì)節(jié)。,什么是接口,Java語(yǔ)言中,接口是彼此不相關(guān)對(duì)象之間發(fā)生聯(lián)系的手段。接口類似于一種對(duì)某種行為達(dá)成的協(xié)議。這種協(xié)議以包含在接口中的一組常量、一些方法定義的形式提出來(lái)。對(duì)象必須實(shí)現(xiàn)接口,才能具有某種行為。接口機(jī)制中沒(méi)有強(qiáng)制這些類之間建立超、子類關(guān)系。,香蕉牛肉餅干,共同特點(diǎn)是?,請(qǐng)各小組完成下面的作業(yè):給出幾何圖形的組合與繼承關(guān)系classpointintx;inty;show()system.out.println(“showapoint”);hide()system.out.println(“hideapoint”);簡(jiǎn)單幾何圖形包括:點(diǎn)、線、三角形、正方形、長(zhǎng)方形、五邊形、六邊形、多邊形、圓球體、圓拄、長(zhǎng)方體、六棱體等,BruceEckel,ThinkinginJava3rd,ThinkinginJava一書(shū)封面的創(chuàng)作靈感來(lái)源于AmericanArts&CraftsMovement(美洲藝術(shù)手工藝品運(yùn)動(dòng))。這一運(yùn)動(dòng)起始于世紀(jì)之交,1900到1920年達(dá)到了頂峰。它起源于英格蘭,具有一定的歷史背景。當(dāng)時(shí)正是機(jī)器革命產(chǎn)生的風(fēng)暴席卷整個(gè)大陸的時(shí)候,而且受到維多利亞地區(qū)強(qiáng)烈裝飾風(fēng)格的巨大影響。Arts&Crafts強(qiáng)調(diào)的是原始風(fēng)格,回歸自然的初衷是整個(gè)運(yùn)動(dòng)的核心。那時(shí)對(duì)手工制作推崇備至,手工藝人特別得到尊重。正因?yàn)槿绱?,人們遠(yuǎn)遠(yuǎn)避開(kāi)現(xiàn)代工具的使用。這場(chǎng)運(yùn)動(dòng)對(duì)整個(gè)藝術(shù)界造成了深遠(yuǎn)的影響,直至今天仍受到人們的懷念。特別是我們面臨又一次世紀(jì)之交,強(qiáng)烈的懷舊情緒難免涌上心來(lái)。計(jì)算機(jī)發(fā)展至今,已走過(guò)了很長(zhǎng)的一段路。我們更迫切地感到:軟件設(shè)計(jì)中最重要的是設(shè)計(jì)者本身,而不是流水化的代碼編制。如設(shè)計(jì)者本身的素質(zhì)和修養(yǎng)不高,那么最多只是“生產(chǎn)”代碼的工具而已。,

注意事項(xiàng)

本文(java語(yǔ)言程序設(shè)計(jì)(第二版).ppt)為本站會(huì)員(max****ui)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!