六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

理解Java面向?qū)ο蟮某绦蛟O(shè)計思想

[摘要]編程模型   所有計算機均由兩種元素組成:代碼和數(shù)據(jù).精確的說,有些程序是圍繞著"什么正在發(fā)生"而編寫,有些則是圍繞"誰正在受影響"而編寫的。   第一種編程方式叫做"面向過程的模型",按這種模型編寫的程序以一系列的線性步驟(代碼)為...
編程模型 

  所有計算機均由兩種元素組成:代碼和數(shù)據(jù).精確的說,有些程序是圍繞著"什么正在發(fā)生"而編寫,有些則是圍繞"誰正在受影響"而編寫的。 

  第一種編程方式叫做"面向過程的模型",按這種模型編寫的程序以一系列的線性步驟(代碼)為特征,可被理解為作用于數(shù)據(jù)的代碼.如 C 等過程化語言。 

  第二種編程方式叫做"面向?qū)ο蟮哪P?,按這種模型編寫的程序圍繞著程序的數(shù)據(jù)(對象)和針對該對象而嚴(yán)格定義的接口來組織程序,它的特點是數(shù)據(jù)控制代碼的訪問.通過把控制權(quán)轉(zhuǎn)移到數(shù)據(jù)上,面向?qū)ο蟮哪P驮诮M織方式上有:抽象,封裝,繼承和多態(tài)的好處. 

  抽象 

  面向?qū)ο蟪绦蛟O(shè)計的基本要素是抽象,程序員通過抽象來管理復(fù)雜性。 

  管理抽象的有效方法是使用層次式的分類特性,這種方法允許用戶根據(jù)物理含義分解一個復(fù)雜的系統(tǒng),把它劃分成更容易管理的塊.例如,一個計算機系統(tǒng)是一個獨立的對象.而在計算機系統(tǒng)內(nèi)部由幾個子系統(tǒng)組成:顯示器,鍵盤,硬盤驅(qū)動器,DVD-ROM,軟盤,音響等,這些子系統(tǒng)每個又由專門的部件組成.關(guān)鍵是需要使用層次抽象來管理計算機系統(tǒng)(或其他任何復(fù)雜系統(tǒng))的復(fù)雜性。 

  面向?qū)ο蟪绦蛟O(shè)計的本質(zhì):這些抽象的對象可以被看作具體的實體,這些實體對用來告訴我們作什么的消息進(jìn)行響應(yīng)。 

/* (我的理解) 
*計算機是一個實體,我要輸入字符,顯示器顯示出來,那么 
*計算機(對象).輸入(鍵盤屬性).顯示(顯示方法) 
*使用分層來引用,操作.而不用管計算機內(nèi)部如何處理. 
*只要有計算機對象,它就能響應(yīng)我的操作,而我敲鍵盤, 
*計算機對象就把這個消息傳給屏幕,屏幕顯示. 
*/ 
  計算機對象包含了它所有的屬性,以及操作,這就是面向?qū)ο蟪绦蛟O(shè)計的三大原則之一:封裝. 

  封裝 

  封裝是一種把代碼和代碼所操作的數(shù)據(jù)捆綁在一起,使這兩者不受外界干擾和誤用的機制.封裝可被理解為一種用做保護(hù)的包裝器,以防止代碼和數(shù)據(jù)被包裝器外部所定義的其他代碼任意訪問.對包裝器內(nèi)部代碼與數(shù)據(jù)的訪問通過一個明確定義的接口來控制.封裝代碼的好處是每個人都知道怎樣訪問代碼,進(jìn)而無需考慮實現(xiàn)細(xì)節(jié)就能直接使用它,同時不用擔(dān)心不可預(yù)料的副作用。 

  在JAVA中,最基本的封裝單元是類,一個類定義著將由一組對象所共享的行為(數(shù)據(jù)和代碼).一個類的每個對象均包含它所定義的結(jié)構(gòu)與行為,這些對象就好象是一個模子鑄造出來的.所以對象也叫做類的實例。 

  在定義一個類時,需要指定構(gòu)成該類的代碼與數(shù)據(jù).特別是,類所定義的對象叫做成員變量或?qū)嵗兞?操作數(shù)據(jù)的代碼叫做成員方法.方法定義怎樣使用成員變量,這意味著類的行為和接口要由操作實例數(shù)據(jù)的方法來定義。 

  由于類的用途是封裝復(fù)雜性,所以類的內(nèi)部有隱藏實現(xiàn)復(fù)雜性的機制.所以JAVA中提供了私有和公有的訪問模式,類的公有接口代表外部的用戶應(yīng)該知道或可以知道的每件東西.私有的方法數(shù)據(jù)只能通過該類的成員代碼來訪問.這就可以確保不會發(fā)生不希望的事情。 

  繼承 

  繼承是指一個對象從另一個對象中獲得屬性的過程.是面向?qū)ο蟪绦蛟O(shè)計的三大原則之二,它支持按層次分類的概念.例如,波斯貓是貓的一種,貓又是哺乳動物的一種,哺乳動物又是動物的一種.如果不使用層次的概念,每個對象需要明確定義各自的全部特征.通過層次分類方式,一個對象只需要在它的類中定義是它成為唯一的 各個屬性,然后從父類中繼承它的通用屬性.因此,正是由于繼承機制,才使得一個對象可以成為一個通用類的一個特定實例.一個深度繼承的子類將繼承它在類層次中的每個祖先的所有屬性。 

  繼承與封裝可以互相作用.如果一個給定的類封裝了某些屬性,它的任何子類將會含有同樣得屬性,另加各個子類所有得屬性.這是面向?qū)ο蟪绦蛟趶?fù)雜性上呈線性而非幾何增長的一個重要概念.新的子類繼承其所有祖先的所有屬性.子類和系統(tǒng)中的其他代碼不會產(chǎn)生無法預(yù)料的交互作用。 

  多態(tài) 

  多態(tài)是指一個方法只能有一個名稱,但可以有許多形態(tài),也就是程序中可以定義多個同名的方法,用"一個接口,多個方法"來描述.可以通過方法的參數(shù)和類型引用。 

  封裝,繼承,多態(tài)的組合使用 

  在由封裝,繼承,多態(tài)所組成的環(huán)境中,程序員可以編寫出比面向過程模型更健壯,更具擴展性的程序.經(jīng)過仔細(xì)設(shè)計的類層次結(jié)構(gòu)是重用代碼的基礎(chǔ).封裝能讓程序員不必修改公有接口的代碼即可實現(xiàn)程序的移植.多態(tài)能使程序員開發(fā)出簡潔,易懂,易修改的代碼.例如:汽車 
從繼承的角度看,駕駛員都依靠繼承性來駕駛不同類型(子類)的汽車,無論這輛車是轎車還是卡車,是奔馳牌還是菲亞特牌,駕駛員都能找到方向盤,手剎,換檔器.經(jīng)過一段時間駕駛后,都能知道手動檔與自動檔之間的差別,因為他們實際上都知道這兩者的共同超類:傳動裝置. 
從封裝的角度看,駕駛員總是看到封裝好的特性.剎車隱藏了許多復(fù)雜性,其外觀如此簡單,用腳就能操作它.發(fā)動機,手剎,輪胎大小的實現(xiàn)對與剎車類的定義沒有影響。 

  從多態(tài)的角度看,剎車系統(tǒng)有正鎖反鎖之分,駕駛員只用腳踩剎車停車,同樣的接口可以用來控制若干種不同的實現(xiàn)(正鎖或反鎖). 
這樣各個獨立的構(gòu)件才被轉(zhuǎn)換為汽車這個對象的.同樣,通過使用面向?qū)ο蟮脑O(shè)計原則,程序員可以把一個復(fù)雜程序的各個構(gòu)件組合在一起,形成一個一致,健壯,可維護(hù)的程序。



主站蜘蛛池模板: 亚日韩| 婷婷狠狠干 | 日本高清视频在线www色下载 | 日本在线免费 | 在线免费h视频 | 香蕉草莓榴莲向日葵 | 青青国产成人久久91网站站 | 速度与激情9免费完整版高清 | 偷操 | 亚洲我不卡 | 天天做天天欢天天爽 | 亚洲欧美日韩在线观看二区 | 亚洲欧美日韩高清一区二区三区 | 午夜免费观看_视频在线观看 | 亚洲免费二区 | 亚洲va精品中文字幕 | 天天射天天色天天干 | 色花堂国产精品第二页 | 日韩中文字幕精品视频在线 | 日本成人精品 | 台湾中文娱乐综合久久久 | 日本高清视频免费在线观看 | 鸥美性生交xxxxx久久久 | 四虎影院免费网址 | 日本在线视频网站www色下载 | 日日摸夜夜摸人人嗷嗷叫 | 日韩三级一区二区 | 中文字幕波多野结衣免费视频 | 午夜久久久久久亚洲国产精品 | 色视频一区二区三区 | 最新亚洲情黄在线网站 | 日韩美女在线播放 | 日本香蕉一区二区在线观看 | 日韩精品一区二区三区中文 | 日本大片久久久高清免费看 | 日韩在线视频线视频免费网站 | 天天躁夜夜躁狠狠躁20216 | 综合激情五月婷婷 | 天天干狠狠 | 色综合色狠狠天天综合色hd | 四虎精品永久在线网址 |