資源描述:
《03適配器設(shè)計(jì)模式》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、信息與管理科學(xué)學(xué)院計(jì)算機(jī)科學(xué)系實(shí)驗(yàn)報(bào)告課程名稱:軟件開發(fā)生命周期與建模實(shí)驗(yàn)名稱:【實(shí)驗(yàn)3】適配器設(shè)計(jì)模式(仿生機(jī)器人)姓名:郭鵬博韓浩強(qiáng)郭帥鄧昊付贊昊石峰組號:班級:2014級計(jì)應(yīng)1班指導(dǎo)教師:張浩實(shí)驗(yàn)室:蘭亭機(jī)房2日期:2016年05月25日一、實(shí)驗(yàn)?zāi)康倪m配器模式(AdapterPattern)是將一個(gè)接口轉(zhuǎn)換成客戶希望的另一個(gè)接口,使接口不兼容的那些類可以一起工作。適配器模式既可以作為類結(jié)構(gòu)型模式,也可以作為對象結(jié)構(gòu)型模式。通過適配器設(shè)計(jì)模式實(shí)驗(yàn),拿握適配器設(shè)計(jì)模式是如何使得接口不兼容而不能交耳的類可以一起工作,理解適配器模式的優(yōu)點(diǎn):將H標(biāo)類和適配者類解耦,
2、通過引入一個(gè)適配器類來重用現(xiàn)冇的適配者類,而無須修改原冇代碼;增加了類的透明性和復(fù)用性,將具體的實(shí)現(xiàn)封裝在適配者類中,對于客戶端類來說是透明的,而R提高了適配者的復(fù)用性;靈活性和擴(kuò)展性都非常好,通過使用配置文件,可以很方便地更換適配器,也可以在不修改原有代碼的基礎(chǔ)上增加新的適配器類,完全符介“開閉原則”。二、實(shí)驗(yàn)環(huán)境一臺PC機(jī),所需軟件Win7/10sUML工具(Rose/Visio/EclipseUML/StartUML/)^Eclipse/MyEclipse、JDK6.()等。三、實(shí)驗(yàn)內(nèi)容仿生機(jī)器人:現(xiàn)需耍設(shè)計(jì)一個(gè)可以模擬各種動(dòng)物行為的機(jī)器人,在機(jī)器人屮定義
3、了一系列方法,如機(jī)器人叫喊方法cry()、機(jī)器人移動(dòng)方法move()等。如果希望在不修改已有代碼的基礎(chǔ)上使得機(jī)器人能夠像狗一?樣叫wangWang(),像狗一樣跑dogRun(),像貓一樣的叫miaoMiao(),像貓一樣的跑catRun()o請使用類適配器模式和對彖適配器模式分別進(jìn)行系統(tǒng)設(shè)計(jì),使得機(jī)器人能夠仿生狗和貓等各類不同動(dòng)物的叫和跑。四、實(shí)驗(yàn)操作過程I.分析得出仿牛機(jī)器人的目標(biāo)對象和被適惻對象。文字描述:Robot為目標(biāo)對象,Dog為被適配對象。類圖:Robot類圖:■OclasstAdapter.Robot?cryO:void?moveQ:voidDo
4、g類圖:classtAdapter.Dog0wangO:voidGrunQ:void2.用類適配器模式對仿生機(jī)器人進(jìn)行適配,定義H標(biāo)對彖接口和被適配對彖類。類圖:Robot類圖:Dog類圖:文字描述:Robot為冃標(biāo)對彖類,Dog為被適配對彖類。OdasstAdapter.Robot0cryO:void?moveQ:voidQdasstAdapter.Dog?wangO:void0runQ:void類代碼:Robot類代碼:publicinterfaceRobot{publicvoidcry();publicvoidmove();}Dog類圖代碼:importj
5、avax.swing.DOptionPane;publicclassDog{publicvoidwang(){JOptionPane.showMessageDiaLog(null,"Dogwangl4級計(jì)應(yīng)1班第3組:郭鵬博、韓浩強(qiáng)、付熒浩、郭帥、鄧昊、石峰“);};publicvoidrun(){3OptionPane.showMessageDiaLog(null“Dogrunl4級計(jì)應(yīng)1班第3組:郭鵬附、韓浩強(qiáng)、付贊浩、郭帥、鄧昊、右峰”);};}3.用類適配器模式對仿生機(jī)器人進(jìn)行適配,定義適配器類,實(shí)現(xiàn)H標(biāo)對彖接口和繼承被適配對彖類。文字描述:Do
6、gAdapter為適配器類,該類繼承了Dog被適配對彖類,實(shí)現(xiàn)了Robot類圖:Fl標(biāo)對彖接口。QclasstAdaptecDogAdapter?cryO:void0moveQ:void4.給出通用的類適配模式結(jié)構(gòu),并進(jìn)行角色說明。文字描述:Target接口為H標(biāo)角色,是所期待的接口。Adaptee類為源角色,即需耍適配的類。Adapter類為適配器角色,即該模式的核心角色,把源接口轉(zhuǎn)換成H標(biāo)接口。類圖:OTarget?operationlO:void0operation20:void■&Adaptee?operationlO:void0Adapter?oper
7、ationlO:void?operation20:void2.用對彖類適配器模式對仿生機(jī)器人進(jìn)行適配,定義冃標(biāo)對彖類和被適配對彖類。文字描述:Robot為D標(biāo)對象類,Dog為被適配對象類。類圖:Robot類圖:Dog類圖:類代碼:Robot類代碼:publicinterfaceRobot{publicvoidcry();publicvoidmove();}Dog類圖代碼:importjavax.swing.DOptionPane;publicclassDog{publicvoidwang(){DOptionPane.shoMMessageDiaLog(null“
8、Dogwangl4級