Java面向?qū)ο笏枷牒透拍頮第1頁
Java面向?qū)ο笏枷牒透拍頮第2頁
Java面向?qū)ο笏枷牒透拍頮第3頁
Java面向?qū)ο笏枷牒透拍頮第4頁
Java面向?qū)ο笏枷牒透拍頮第5頁
資源描述:

《Java面向?qū)ο笏枷牒透拍睢酚蓵?huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、Java面向?qū)ο笏枷牒透拍?《Java程序設(shè)計(jì)》ClassesandObjects汪華登桂林電子科技大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院目標(biāo)掌握面向?qū)ο缶幊痰母拍钫莆杖绾蝿?chuàng)建類和構(gòu)造對(duì)象掌握對(duì)象的成員變量和方法了解this關(guān)鍵字2面向?qū)ο缶幊谈攀雒嫦驅(qū)ο缶幊蹋∣bjectOrientedProgramming,簡稱OOP)描述的是對(duì)象之間的相互作用。面向?qū)ο缶幊膛c面向過程編程的區(qū)別過程化程序設(shè)計(jì)先確定算法,再確定數(shù)據(jù)結(jié)構(gòu);面向?qū)ο缶幊滔却_定數(shù)據(jù)結(jié)構(gòu),再確定運(yùn)算。面向過程編程的程序員,習(xí)慣于建立數(shù)據(jù)結(jié)構(gòu)存放數(shù)據(jù)并定義方法(函數(shù))來操作數(shù)據(jù);面向?qū)ο缶幊痰某绦騿T則構(gòu)造一個(gè)對(duì)象

2、模型,將數(shù)據(jù)與方法組織在一起。3對(duì)象對(duì)象的狀態(tài)對(duì)象的行為我們可以把現(xiàn)實(shí)世界的事物抽象成對(duì)象對(duì)象一般都有兩個(gè)特征:狀態(tài)(state)和行為(behavior)軟件的對(duì)象概念是由現(xiàn)實(shí)世界對(duì)象抽象而來把現(xiàn)實(shí)世界對(duì)象的狀態(tài)保存在軟件對(duì)象的變量中;現(xiàn)實(shí)世界對(duì)象的行為通過軟件對(duì)象的方法(函數(shù))來實(shí)現(xiàn)。4面向?qū)ο驩OA-ObjectOrientedAnalysis面向?qū)ο蟮姆治鯫OD-ObjectOrientedDesign面向?qū)ο蟮脑O(shè)計(jì)OOI-ObjectOrientedImplementation面向?qū)ο蟮膶?shí)現(xiàn)5面向?qū)ο缶幊蹋∣bjectOrientedProgramm

3、ing)6classCar{intcolor_number;intdoor_number;intspeed;voidbrake(){…}voidspeedUp(){…};voidslowDown(){…}}計(jì)算機(jī)中的對(duì)象的原型現(xiàn)實(shí)生活中的對(duì)象什么是類(WhatIsClass)類實(shí)際上是對(duì)某種類型的對(duì)象定義變量和方法的原型。在現(xiàn)實(shí)世界中,你經(jīng)常看到相同類型的許多對(duì)象。比如,你的自行車只是現(xiàn)實(shí)世界中許多自行車的其中一輛。使用面向?qū)ο蠹夹g(shù),我們可以說你的自行車是自行車對(duì)象類的一個(gè)實(shí)例。通常,自行車有一些狀態(tài)(當(dāng)前檔位、兩個(gè)輪子等等)以及行為(改變檔位、剎車等等)。但

4、是,每輛自行車的狀態(tài)都是獨(dú)立的并且跟其它自行車不同。當(dāng)廠家制造自行車的時(shí)候,廠商利用了自行車共有的特性來根據(jù)相同的藍(lán)圖制造許多自行車。如果制造一輛自行車就要產(chǎn)生一個(gè)新藍(lán)圖,那效率就太低了7對(duì)象和類(ObjectsandClasses)把相似的對(duì)象劃歸成一個(gè)類。在軟件中,類,就是一個(gè)模板,它定義了通用于一個(gè)特定種類的所有對(duì)象的狀態(tài)(變量)和行為(方法)。類是創(chuàng)建對(duì)象的模板,對(duì)象是類的實(shí)例。一個(gè)對(duì)象是類的一個(gè)實(shí)例。有了類,才可以創(chuàng)建對(duì)象。類不能是它們描述的對(duì)象本身,類是同一種對(duì)象的集合的抽象,即,同一類對(duì)象的變量和方法的原型。8variablesmethods面向

5、對(duì)象程序設(shè)計(jì) (ObjectOrientedProgramming)從程序設(shè)計(jì)的角度看,類是面向?qū)ο蟪绦蛑凶罨镜某绦騿卧?。類?shí)質(zhì)上定義的是一種數(shù)據(jù)類型,這種數(shù)據(jù)類型就是對(duì)象類型。所以我們可以使用類名稱來聲明對(duì)象變量。聲明對(duì)象變量之后,還不能使用對(duì)象。必須用運(yùn)算符new創(chuàng)建對(duì)象實(shí)體之后,才能使用對(duì)象。9一個(gè)簡單的例子編寫一個(gè)駕駛汽車的方法面向過程的程序設(shè)計(jì):編寫一個(gè)方法,voiddrivecar();面向?qū)ο蟮某绦蛟O(shè)計(jì):將一輛汽車看成一個(gè)對(duì)象,將所有汽車對(duì)象的共性抽取出來,設(shè)計(jì)一個(gè)類Car,類中有一個(gè)方法voiddrive(),用Car這個(gè)類實(shí)例化一個(gè)具體的對(duì)

6、象car,調(diào)用:car.drive()。10面向?qū)ο蟮娜齻€(gè)特征封裝(Encapsulation)繼承(Inheritance)多態(tài)(Polymorphism)11封裝(Encapsulation)封裝把對(duì)象的所有組成部分組合在一起,封裝定義程序如何引用對(duì)象的數(shù)據(jù),封裝實(shí)際上使用方法將類的數(shù)據(jù)隱藏起來,控制用戶對(duì)類的修改和訪問數(shù)據(jù)的程度12私有數(shù)據(jù)方法方法數(shù)據(jù)對(duì)象A對(duì)象B公有數(shù)據(jù)OOP—封裝的主要好處13信息隱藏——例如,電視內(nèi)有很多復(fù)雜零件,通過各種按鈕將內(nèi)部的復(fù)雜結(jié)構(gòu)給隱藏了。簡化操作——只需通過調(diào)頻和音量等少量按鈕,就可以操縱電視。程序的基本封裝單元是類,

7、通過類的封裝,既可以將代碼單元化,又達(dá)到信息隱藏的目的。類的定義(Declaration)[修飾符]class類名[繼承父類][接口]{成員變量;構(gòu)造方法;成員方法;}文件名必須與public類名相同;14創(chuàng)建對(duì)象使用下列語法可創(chuàng)建對(duì)象:new構(gòu)造函數(shù)關(guān)鍵字new通常稱為創(chuàng)建運(yùn)算符,用于分配對(duì)象內(nèi)存,并將該內(nèi)存初始化為缺省值。一旦new完成分配和初始化內(nèi)存,它就將調(diào)用構(gòu)造函數(shù)來執(zhí)行對(duì)象初始化。15當(dāng)創(chuàng)建一個(gè)類時(shí),只是創(chuàng)建了一種新的數(shù)據(jù)類型。對(duì)象是類的一個(gè)實(shí)例。new1、第一步,你必須聲明該類類型的一個(gè)變量,這個(gè)變量沒有定義一個(gè)對(duì)象。實(shí)際上,它只是一個(gè)能夠引用對(duì)

8、象的簡單變量。2、第二步,該聲明要?jiǎng)?chuàng)建

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。