




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
課程設(shè)計(jì)報(bào)告(說明書)課程名稱:_____J2EE課程設(shè)計(jì)_________起止時(shí)間:2015年6月16日----2015年6月21日共1周題目:保衛(wèi)家園單機(jī)小游戲設(shè)計(jì)組員一:組員二:組員三:組員四:指導(dǎo)教師:2015年6月21日經(jīng)濟(jì)管理學(xué)院湖北汽車工業(yè)學(xué)院經(jīng)濟(jì)管理學(xué)院信管系課程設(shè)計(jì)任務(wù)書一、題目:保衛(wèi)家園二、內(nèi)容此游戲中,有對(duì)象:如大僵尸,小僵尸,保衛(wèi)者,武器,鎧甲等。但各種武器有不同的殺傷力和射程。各種鎧甲有不同的保護(hù)力。因而將采用命令模式,策略模式,裝飾模式進(jìn)行代碼設(shè)計(jì),命令模式主要對(duì)裝備和鎧甲進(jìn)行替換。策略模式對(duì)僵尸,保衛(wèi)者等對(duì)象進(jìn)行抽象和封裝等編寫,裝飾模式針對(duì)諸如:一個(gè)保衛(wèi)者需要鎧甲,武器等多個(gè)裝飾對(duì)象。三、基本工作量要求1、運(yùn)用課堂所學(xué)UML語言方法,畫出課程設(shè)計(jì)中的主要的UML圖。2、代碼的設(shè)計(jì)要體現(xiàn)出少修改,多擴(kuò)展,松散耦合,宜維護(hù)。運(yùn)用java設(shè)計(jì)模式中的兩種以上的模式對(duì)系統(tǒng)的代碼進(jìn)行設(shè)計(jì),要巧妙地使用java中常用的技術(shù)方法,封裝,委托,多態(tài),繼承,重寫覆蓋等,同時(shí)對(duì)代碼要進(jìn)行注解。3、根據(jù)系統(tǒng)的要達(dá)到的目的,建立測(cè)試指標(biāo),對(duì)系統(tǒng)進(jìn)行測(cè)試。4、根據(jù)指導(dǎo)老師審核意見及課程設(shè)計(jì)規(guī)范,整理、修改,完成一篇字?jǐn)?shù)不少于6000字的課程設(shè)計(jì)報(bào)告。起止日期:2014年6月16日至2014年6月20日(包括答辯共1周)五、候選學(xué)生任務(wù)表姓名班級(jí)學(xué)號(hào)任務(wù)及貢獻(xiàn)杜逸君T1253-920120530901萬志超T1253-920120530919周強(qiáng)T1253-920120530921陳臣T1253-920120530922指導(dǎo)教師簽名:日期:目錄系統(tǒng)描述1.1設(shè)計(jì)的目的和意義.....................................................11.2設(shè)計(jì)的主要內(nèi)容.......................................................11.2.1游戲背景..........................................................11.2.2游戲過程..........................................................11.3需要實(shí)現(xiàn)的功能......................................................2第二章系統(tǒng)分析與設(shè)計(jì)2.1需求分析............................................................22.2設(shè)計(jì)模式及相關(guān)類圖.................................................22.2.1策略模式.........................................................22.2.2裝飾模式.........................................................32.2.3命令模式.........................................................42.2.4工廠模式.........................................................4第三章心得體會(huì)3.1個(gè)人心得體會(huì)........................................................53.2小組心得體會(huì)........................................................7第四章結(jié)束語4.1致謝...............................................................74.2參考文獻(xiàn)...........................................................74.3附錄...............................................................7相關(guān)代碼..............................................................8系統(tǒng)描述保衛(wèi)家園是一款單小游戲,本游戲主要講訴了家園保衛(wèi)者與侵略者之間展開的一場(chǎng)激烈而又刺激的戰(zhàn)斗。沒有游戲界面的制作,各個(gè)過程都從控制臺(tái)輸出結(jié)果。1.1設(shè)計(jì)的目的和意義在這個(gè)各類益智類小游戲?qū)硬徊桓F的信息時(shí)代,在這處處需要和平,需要正義的時(shí)代,為了滿足游戲愛好者的需要,為了呼吁更多人愛好和平,我們基于刺激而又充滿正能量的設(shè)計(jì)理念,著手開發(fā)了這款守衛(wèi)者與侵略者之間的進(jìn)行的一場(chǎng)反侵略斗爭。本游戲的主要意義在于喚醒更多人的正義感,誓死保衛(wèi)家園,反對(duì)侵略,敢于同非正義侵略作斗爭。同時(shí)傳達(dá)了一種戰(zhàn)爭給被侵略者和侵略者帶來苦難,珍惜和平才能避免不必要的傷害的信息,呼吁更多的人愛好和平,珍惜和平。1.2設(shè)計(jì)的主要內(nèi)容游戲背景在一座政局穩(wěn)定,人民安居樂業(yè),百姓豐衣足食,堪稱世外桃源的小城堡里,一代明君(城主)統(tǒng)領(lǐng)著自己的士兵和百姓一起過著幸福的生活。知道有一天,一大批僵尸來襲,擾亂了這座小城的安寧,為了趕走侵略者,這里的城主帶領(lǐng)自己的士兵浴血奮戰(zhàn),誓死保衛(wèi)家園,同侵襲著展開了一場(chǎng)激烈而又充滿正義的反侵略戰(zhàn)爭。1.2.2游戲過程城主帶領(lǐng)自己的士兵同侵略者作斗爭的過程中,向來愛好和平的城主為了保護(hù)全城百姓,同時(shí)也為了抵御侵略者傷害,城主穿著鎧甲帶領(lǐng)自己的士兵同手持長劍僵尸浴血奮戰(zhàn)。戰(zhàn)斗過程中,侵略者有大僵尸和小僵尸,他們可以鋒利的長劍作為武器來屠城,守衛(wèi)者城主和他的士兵有可以抵御傷害的鎧甲來抵御侵略者。歷經(jīng)一場(chǎng)又一場(chǎng)的激烈戰(zhàn)爭,最終。。。結(jié)果待定,敬請(qǐng)期待!1.3需要實(shí)現(xiàn)的功能本游戲設(shè)計(jì)開發(fā)基于java設(shè)計(jì)模式設(shè)計(jì)的一個(gè)保衛(wèi)家園游戲,通過各個(gè)類之間的聯(lián)系,每個(gè)類的屬性,各個(gè)父類和子類之間的繼承和方法來實(shí)現(xiàn)生產(chǎn)僵尸,給僵尸裝飾武器,命令保衛(wèi)者打僵尸,通過血量和攻擊力的計(jì)算關(guān)系,得出勝負(fù)。第二章系統(tǒng)分析與設(shè)計(jì)2.1需求分析僵尸:(稱號(hào),血量,攻擊力)僵尸分為大僵尸和小僵尸,每個(gè)僵尸都有自己的稱號(hào),在戰(zhàn)斗的過程中血量會(huì)減少,使用武器之后攻擊力會(huì)提高。城主:(血量,攻擊力,鎧甲)城主在戰(zhàn)斗的過程中有鎧甲,且血量會(huì)減少,穿鎧甲會(huì)降低血量下降的速度。同時(shí)攻擊力也有所變化,攻擊力的變化會(huì)影響敵方血量的減少量。。士兵:(攻擊力,血量)士兵在戰(zhàn)斗過程中血量會(huì)隨著傷害的持續(xù)時(shí)間二減少,同時(shí)會(huì)因自身攻擊力給敵方造成傷害,使得敵方血量減少。長劍:(攻擊力,傷害)是雙方戰(zhàn)斗過程中的武器,使用了該武器會(huì)自己的增加攻擊力,同時(shí)會(huì)影響敵方血量變化的速度。血量:城主,大小僵尸,士兵在戰(zhàn)斗的過程中,血量會(huì)隨著傷害的持續(xù)而減少。使用武器之后會(huì)加快血量變化速度,穿戴鎧甲之后減緩血量減少的速度。鎧甲:(護(hù)甲值,抵御傷害)可以減緩守衛(wèi)者城主,士兵血量的減少幅度,抵御敵方造成的傷害。2.2設(shè)計(jì)模式及其相關(guān)類圖策略模式通過控制角色(大小僵尸,城主,士兵),為他們配備不同裝備和鎧甲等策略來應(yīng)不同攻擊力和不同護(hù)甲值的敵方角色。為戰(zhàn)斗取得勝利作好相關(guān)策略。裝飾模式通過設(shè)定大小僵尸,士兵,城主的不同血量和不同攻擊力對(duì)這些對(duì)象進(jìn)行裝飾,同時(shí)通過穿戴鎧甲來裝飾城主,減緩城主失血速度。2.2.3命令模式命令不同角色使用或者不使用武器,穿戴鎧甲或者不穿戴鎧甲,命令攻擊敵方等方式來實(shí)現(xiàn)命令模式。工廠模式通過鍵盤操作利用工廠模式來生產(chǎn)具備不同攻擊力和血量值的僵尸來應(yīng)對(duì)敵方的攻擊,增加對(duì)敵方的傷害。.心得體會(huì)3.1個(gè)人心得體會(huì)為期一周的J2EE課程設(shè)計(jì)就要結(jié)束了,在本次課程設(shè)計(jì)中我們的任務(wù)是設(shè)計(jì)一款游戲,這個(gè)游戲的名字叫做保衛(wèi)家園,游戲中有士兵,城主,僵尸等游戲角色。其中我么采用了命令模式、策略模式、裝飾模式以及工廠模式。我們分工明確完成每個(gè)模式。在這次課設(shè)任務(wù)中,我們一起討論怎樣完成,中間有過爭吵,有過歡樂。但更多的是我們收獲了許多理論中得不到的實(shí)踐經(jīng)驗(yàn),雖然本次實(shí)驗(yàn)做的成果不是很完美,但我相信在以后的學(xué)習(xí)中,我一定會(huì)不斷完善自己,珍惜每一次實(shí)踐的機(jī)會(huì),從中發(fā)現(xiàn)問題,解決問題。我覺得學(xué)號(hào)這門課程,一定要有一種自我約束力和自學(xué)的能力。遇到問題要有能力去解決問題,當(dāng)嘗試用各種放學(xué)解決問題時(shí),這就是一種財(cái)富。同時(shí)通過這次課設(shè),我深深的感覺到自身所學(xué)的知識(shí)有限,有些知識(shí)點(diǎn)以前沒有學(xué)過。但我們沒有研究,當(dāng)課設(shè)中用到是感覺自己還是特別無知。雖然努力可以解決,但是浪費(fèi)了大量的時(shí)間,這一點(diǎn)我必須在以后的學(xué)習(xí)中改正。同時(shí)也要督促自己在學(xué)習(xí)的過程中不斷的完善自我。另外一點(diǎn),也是在課設(shè)中必不可少的部分,就是同學(xué)之間的互相幫助。相互幫助是很重要的一點(diǎn),這在以后的工作或生活中也是很關(guān)鍵的。此次課設(shè),我深深體會(huì)到了積累知識(shí)的重要性。當(dāng)中我們遇到了不少難題,經(jīng)過我們大家的討論和老師細(xì)心的一一指導(dǎo),問題得到了解決。更深刻的認(rèn)識(shí)到要做一個(gè)合格的編程者并非我以前想像的則容易,最重要的還是細(xì)致嚴(yán)謹(jǐn)。工作崗位是不會(huì)要一個(gè)一無是處的人的,所以我們要更多更快地從一個(gè)學(xué)生向工作者轉(zhuǎn)變,總的來說我對(duì)這次實(shí)習(xí)還是比較充實(shí)的,它使我學(xué)到了很多東西,為我以后的學(xué)習(xí)做了引導(dǎo),點(diǎn)明了方向,我相信在不遠(yuǎn)的未來定會(huì)有屬于我們自己的一片美好天空!再一次感謝老師的幫助?!乓菥敬握n程設(shè)計(jì)對(duì)我們來說還是挺有挑戰(zhàn)性的,通過五天時(shí)間的開發(fā)設(shè)計(jì),我們最終成型了一個(gè)比較簡單的守衛(wèi)家園的游戲,雖然游戲界面做不出來,所有的流程都是從控制臺(tái)輸出,但我們依然是花費(fèi)了很長時(shí)間。在本次試驗(yàn)中,我們分工合作,我們的策略是將游戲中涉及到的對(duì)象,屬性等設(shè)計(jì)好了之后,大家分工負(fù)責(zé)不同的模式,最后再整合成一個(gè)完整的游戲。在本次課程設(shè)計(jì)中我主要是負(fù)責(zé)工廠模式的編寫,以及類圖的制作。通過工廠模式,生產(chǎn)出兩種不同的僵尸,一開始真實(shí)難以下手。在各種百度各種翻書后,大體上有了編寫工廠模式這一部分代碼的思路。我建了四個(gè)類和一個(gè)測(cè)試主類。僵尸工廠類定義了生產(chǎn)僵尸的方法,抽象類僵尸類定義了僵尸的屬性,具體的大小僵尸的名字,血量,攻擊力的具體值。生產(chǎn)出一個(gè)大僵尸一個(gè)小僵尸。然后就是類圖的制作,這個(gè)只要代碼寫出來了,類圖還是比較好畫的。通過本次課程設(shè)計(jì),除了對(duì)我負(fù)責(zé)的工廠模式有了更深的理解外,我們本次課程設(shè)計(jì)所用到的命令模式,裝飾模式,策略模式也有了很大的提高。但是我們?cè)谡n程設(shè)計(jì)中還是有很多不足的,在我們分工將各個(gè)板塊的模式編寫完畢后,整合就成了一個(gè)最大的問題,我們也是請(qǐng)教了有經(jīng)驗(yàn)的同學(xué)給我們指導(dǎo),最后成功完成了游戲的整合。通過這次課程設(shè)計(jì),我明白了,平時(shí)在課堂上所聽的所學(xué)的必須要通過一個(gè)項(xiàng)目實(shí)踐出來,可能當(dāng)時(shí)聽的是感覺好像都明白,但是真正操作起來卻不則簡單。要想學(xué)號(hào)技術(shù),不僅僅是靠平時(shí)聽的那些理論的東西,只有自己親自動(dòng)手才能真正的學(xué)會(huì)東西,學(xué)到技術(shù)?!f志超通過本次課設(shè)對(duì)小游戲的基本開發(fā)環(huán)境有了基本的了解,對(duì)之前所學(xué)的java相關(guān)知識(shí)有了更深刻的理解。這是第一次在掌握理論知識(shí)的基礎(chǔ)上進(jìn)行的游開發(fā)實(shí)踐。時(shí)實(shí)踐的過程中學(xué)到了許多之前沒能掌握的知識(shí),同時(shí)也鞏固了java相關(guān)的基礎(chǔ)知識(shí)。在游戲開發(fā)的過程中,在單機(jī)小游戲的開發(fā)過程中,游戲設(shè)計(jì)思想方法和設(shè)計(jì)理念是非常重要的,在此基礎(chǔ)上,再結(jié)合所學(xué)知識(shí)來完成整個(gè)游戲的開發(fā)。設(shè)計(jì)模式也是非常重要的環(huán)節(jié),首先具體了解了相關(guān)模式的創(chuàng)建方法,再對(duì)裝飾模式,策略模式,工廠模式,命令模式等模式的基本使用方法和使用環(huán)境有做具體的理解,然后再設(shè)計(jì)相關(guān)模式,此過程,不僅加深了自己對(duì)相關(guān)知識(shí)的了解,更拓寬了視野,對(duì)今后有關(guān)知識(shí)的學(xué)習(xí)奠定了一定的基礎(chǔ)。此外,在游戲開發(fā)的過程中。畫UML類圖也是至關(guān)重要的環(huán)節(jié)。畫UML類圖,首先必須熟悉各個(gè)實(shí)體類,類的屬性及其相關(guān)方法。同時(shí)對(duì)各個(gè)符號(hào)所代表的基本含義要有了解。在此基礎(chǔ)上根據(jù)游戲開發(fā)的需要,結(jié)合代碼來完善UML類圖。本次課程設(shè)計(jì)的過程中,遇到了許多難題,通過小組成員之間的密切協(xié)作,向老師請(qǐng)教,廣泛查閱相關(guān)資料,最終使得問題迎刃而解。與此同時(shí)不僅加深了對(duì)相關(guān)知識(shí)的理解,更學(xué)到了許多課堂之外了的理論知識(shí)和實(shí)踐知識(shí)。本次課設(shè)學(xué)到了許多,也收獲了許多,無疑是一次充滿艱辛,也充滿喜悅的旅行。最后誠信的感謝老師的細(xì)心指導(dǎo),和耐心講解,也非常感謝小伙伴們不遺余力,團(tuán)結(jié)協(xié)作完成本次課程設(shè)計(jì)?!軓?qiáng)我們用了一個(gè)周的時(shí)間,才把保衛(wèi)家園游戲完成了大體的框架結(jié)構(gòu)。這一個(gè)周里,我們每天都忙到很晚去搜集資料、查看書籍,由于上課期間對(duì)J2EE模式設(shè)計(jì)這門課程只是停留在略懂皮毛的理論階段,對(duì)于許多模式都不懂,因此這個(gè)游戲制作的實(shí)際操作對(duì)于我們來說有巨大的難度。在系統(tǒng)分析階段,我們針對(duì)保衛(wèi)家園游戲,初步地定下了要實(shí)現(xiàn)的功能,并將整個(gè)游戲分成若干個(gè)模式。接下來是人員的分工,我們每個(gè)人都負(fù)責(zé)一個(gè)模式代碼的編寫,每個(gè)人都有不同的功能要實(shí)現(xiàn),將復(fù)雜的過程變的簡單起來。在模式編寫階段,出現(xiàn)了不少技術(shù)上的問題,我們每個(gè)人既獨(dú)立又合作,遇難題一同攻克。出于我們基礎(chǔ)不扎實(shí)這方面的原因,我們?cè)谀J皆O(shè)計(jì)的時(shí)候遇到了許多不同的問題,甚至被裝飾模式中的簡單問題弄得焦頭爛額。但在一次次的錯(cuò)誤的實(shí)踐中,我們對(duì)各種設(shè)計(jì)的模式理解得更加深刻,也因此重新燃起斗志,在一次次的失敗中,我們總結(jié)經(jīng)驗(yàn),漸漸的就學(xué)會(huì)了許多??墒窃谌缬螒蜻\(yùn)行方面,我們始終不能完成這一功能,這也是我們?nèi)毕莸乃凇hb于水平能力問題,對(duì)于保衛(wèi)家園的游戲開發(fā)我們并未完成,握。但是通過這次課設(shè),我們也學(xué)到了許許多多的東西:首先自然是課本知識(shí)了,這次課設(shè)我們對(duì)各種模式都有了一個(gè)深刻的理解,對(duì)JAVA語言更是有了一個(gè)全新的認(rèn)識(shí),同時(shí),我們更深地體會(huì)到J2EE的理念,并大致掌握了各種模式設(shè)計(jì)的基本過程;另一方面,也讓我感受到團(tuán)隊(duì)合作的重要性。讓我學(xué)會(huì)了如何與他人更好的合作,如何發(fā)表自己的看法。也讓我學(xué)會(huì)了與人溝通,怎么發(fā)現(xiàn)并學(xué)習(xí)他人的有點(diǎn)??偟膩碚f,這次課設(shè)讓我受益很大,我很珍惜這次課設(shè)的經(jīng)歷,謝謝和我一起努力的同學(xué),同時(shí)也感謝老師對(duì)我的指導(dǎo)。——陳臣3.2小組心得體會(huì)通過本此課程設(shè)計(jì)實(shí)訓(xùn),使我們掌握了簡單單機(jī)小游戲開發(fā)的基本方法和相關(guān)基礎(chǔ)知識(shí),對(duì)J2ee這門課程也有了更深的了解和全新的認(rèn)識(shí)。在完成課設(shè)的過程中不僅使得我們鞏固了之前所學(xué)的java基礎(chǔ)知識(shí),更加深了我們隊(duì)Java知識(shí)的理解,還讓我們通過理論結(jié)合實(shí)際去完成一項(xiàng)具體的開發(fā)。這對(duì)我們今后的學(xué)習(xí)和實(shí)踐提供了又一個(gè)平臺(tái)。在課程設(shè)計(jì)的過程中,有最開始看到課題無從下手,到現(xiàn)在的得心應(yīng)手,無疑是一個(gè)很好地學(xué)習(xí)過程和提升過程。課設(shè)伊始,我們都被各種疑惑和問題困擾,通過不斷地查閱資料,不斷地向老師和同學(xué)請(qǐng)教,不僅解決了許多實(shí)際問題,還豐富了我們的知識(shí),加深了我們對(duì)著方面知識(shí)的理解。在課堂學(xué)習(xí)的過程中,知識(shí)淺顯的了解了部分設(shè)計(jì)模式,課設(shè)時(shí)通過翻閱相關(guān)書籍和網(wǎng)絡(luò)搜索,又了解了更多的模式,對(duì)Java最常用的23中模式的用法都有所了解,這對(duì)今后學(xué)習(xí)這方面的知識(shí)打下了良好的基礎(chǔ),為今后更深入的學(xué)習(xí)提供了保障。本次課程設(shè)計(jì)對(duì)我們來說,不僅我們今后的學(xué)習(xí)和實(shí)踐提供了一個(gè)良好的平臺(tái),更加強(qiáng)了我們對(duì)知識(shí)的理解和掌握,所以說本次課設(shè)所蘊(yùn)含的意義是很重大的,對(duì)我們每個(gè)人今后的發(fā)展提供了很好地鍛煉平臺(tái)。4.1致謝真誠感謝在此次課設(shè)的過程中,為我們提供幫助和指導(dǎo)的指導(dǎo)老師!也感謝相互協(xié)作,不懈努力的小伙伴們!4.2參考文獻(xiàn)[1]《Java23種設(shè)計(jì)模式》.百度百科
[2]
劉建勛.
設(shè)計(jì)模式作業(yè).
設(shè)計(jì)模式——裝飾模式總結(jié)及實(shí)例.[3]《java5游戲編程》JonathanS.Harbourr著.機(jī)械工業(yè)出版社4.3附錄Packagecelue僵尸類接口:packagecelue;publicinterfaceJiangshi{publicvoidbeida();繼承:①packagecelue;publicclassJiaose1implementsJiangshi{@Overridepublicvoidbeida(){ System.out.println("移動(dòng)中被打");packagecelue;publicclassJiaoseimplementsJiangshi{@Overridepublicvoidbeida(){ System.out.println("原地站著被打");Test.javapackagecelue;publicclassTest{publicstaticvoidmain(String[]args){ Jiangshijianhshi=newJiaose(); Contextcontext=newContext(jianhshi); context.fight(); Jiangshijianhshi1=newJiaose1(); Contextcontext1=newContext(jianhshi1); context1.fight();運(yùn)行結(jié)果截圖:Packagefactorypackagefactory;publicclassBigjiangshiextendsJiangshi{publicintxueliang=1000;publicintgongjili=50; privateStringname="大僵尸";publicBigjiangshi(){publicvoidsetName(Stringname){=name;publicStringgetName(){returnname;publicvoidSay(){ System.out.println("我是"+name+"我的血量是"+xueliang+"我的攻擊力為"+gongjili);②packagefactory;publicabstractclassJiangshi{intxueliang;intgongjili;Stringname;③packagefactory;publicclassJiangshiFactory{publicJiangshicreateJiangshi(Stringtype){ Jiangshijiangshi;if(type.equals("bigjiangshi")) jiangshi=newBigjiangshi();else jiangshi=newSmalljiangshi();returnjiangshi;④packagefactory;publicclassSmalljiangshiextendsJiangshi{publicintxueliang=500;publicintgongjili=25;publicString name="小僵尸";publicSmalljiangshi(){publicvoidsetName(Stringname){=name;publicStringgetName(){returnname;publicvoidsay(){ System.out.println("我是"+name+"我的血量是"+xueliang+"我的攻擊力為"+gongjili);⑤packagefactory;importfactory.Bigjiangshi;importfactory.Smalljiangshi;publicclassTest{publicstaticvoidmain(String[]args){ Bigjiangshirg; rg=newBigjiangshi(); rg.Say();Smalljiangshic;c=newSmalljiangshi();c.say();運(yùn)行結(jié)果截圖:packageminglingpackageMingling;publicabstractclassGroup{publicabstractvoidda();packageMingling;importfactory.Bigjiangshi;importfactory.JiangshiFactory;importfactory.Smalljiangshi;publicclasskongshouextendsGroup{ publicvoidda1(){ JiangshiFactoryfactory1=newJiangshiFactory(); Smalljiangshismalljiangshi=(Smalljiangshi)factory1.createJiangshi("smalljiangshi"); System.out.println("士兵打"+smalljiangshi.getName()); publicvoidda(){ JiangshiFactoryfactory=newJiangshiFactory(); Bigjiangshibigjiangshi=(Bigjiangshi)factory.createJiangshi("bigjiangshi"); System.out.println("城主打"+bigjiangshi.getName());packageMingling;publicclassText{publicstaticvoidmain(String[]arge){ System.out.println("守衛(wèi)者攻擊方式..."); kongshourg; rg=newkongshou(); rg.da(); rg.da1();運(yùn)行結(jié)果截圖:packagezhuangshi/**packagejiangshi;publicclasschangjianextendsjiangshi{ publicchangjian(){ description="changjian"; publicchangjian(jiangshijiangshi2){ //TODOAuto-generatedconstructorstub @Override publicdoublegongjili(){ return500; @Override publicdoublexueliang(){ return0;packagezhuangshi;publicclasschangjianextendscondimentdecorator{ jiangshiJiangshi; publicchangjian(jiangshiJiangshi){ this.Jiangshi=Jiangshi; @Override publicStringgetDescription(){ //TODOAuto-generatedmethodstub returnJiangshi.getDescription(); @Override publicdoublegongjili(){ //TODOAuto-generatedmethodstub return.200+Jiangshi.gongjili(); @Override publicdoublexueliang(){ //TODOAuto-generatedmethodstub return.2000+Jiangshi.xueliang();packagezhuangshi;publicclasschengzhuextendsjiangshi{publicchengzhu(){description="城主";publicchengzhu(jiangshijiangshi2){//TODOAuto-generatedconstructorstub@Overridepublicdoublegongjili(){return100; }@Overridepublicdoublexueliang(){return3000;packagezhuangshi;publicabstractclasscondimentdecoratorextendsjiangshi{publicabstractStringgetDescription();packagezhuangshi;publicclassdajiangshiextendsjiangshi{publicdajiangshi(){description="大僵尸";publicdajiangshi(jiangshijiangshi2){//TODOAuto-generatedconstructorstub@Overridepublicdoublegongjili(){return50;@Overridepublicdoublexueliang(){return1000;⑤packagezhuangshi;publicclassfanjiaextendscondimentdecorator{ jiangshiJiangshi;publicfanjia(jiangshiJiangshi){this.Jiangshi=Jiangshi;@OverridepublicStringgetDescription(){//TODOAuto-generatedmethodstubreturnJiangshi.getDescription()+"司令";@Overridepublicdoublegongjili(){//TODOAuto-generatedmethodstubreturn.1000+Jiangshi.gongjili();@Overridepublicdoublexueliang(){//TODOAuto-generatedmethodstubreturn.2000+Jiangshi.xueliang();⑥packagezhuangshi;publicabstractclassjiangshi{ Stringdescription="Unknownjiangshi";publicStringgetDescription(){returndescription;publicabstractdoublexueliang();publicabstractdoublegongjili();⑦//packagejiangshi;/**publicclasskaijiaextendsjiangshi{ jiangshijianshi2; publicStringgetDescription(){ returnjianshi2.getDescription()+"xueliang"; publickaijia(jiangshijiangshi2){ this.jianshi2=jiangshi2; publicdoublexueliang(){ return5000; @Override publicdoublegongjili(){ //TODOAuto-generatedmethodstub return50;packagezhuangshi;publicclasskaijiaextendscondimentdecorator{ jiangshiJiangshi; publickaijia(jiangshiJiangshi){ this.Jiangshi=Jiangshi; @Override publicStringgetDescription(){ //TODOAuto-generatedmethodstub returnJiangshi.getDescription(); @Override publicdoublegongjili(){ //TODOAuto-generatedmethodstub return.0+Jiangshi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年低糖食品測(cè)試題及答案
- 2025年提高智商面試題及答案
- 2025年德威初中考試題及答案
- 2025年小學(xué)廚師考試題及答案
- 2025年特種工塔吊考試題及答案
- 2025年國家高壓電工試題及答案
- 2025年學(xué)校家庭測(cè)試題及答案
- 2025年士兵語音測(cè)試試題及答案
- 2025年危險(xiǎn)品充裝試題及答案
- 2025年跑力指數(shù)測(cè)試題及答案
- 2024年職業(yè)技能“大數(shù)據(jù)考試”專業(yè)技術(shù)人員繼續(xù)教育考試題庫與答案
- 2024秋季山西交控集團(tuán)所屬路橋集團(tuán)校園招聘270人公開引進(jìn)高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- SYT 6680-2021 石油天然氣鉆采設(shè)備 鉆機(jī)和修井機(jī)出廠驗(yàn)收規(guī)范-PDF解密
- 華為供應(yīng)鏈管理崗位筆試題目含筆試技巧
- 2024年常州機(jī)電職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測(cè)試題庫及答案解析
- 任務(wù)4 聚酯縮聚生產(chǎn)操作-生產(chǎn)操作規(guī)程
- 湖南天壹名校聯(lián)盟2024年高二3月大聯(lián)考數(shù)學(xué)試題+答案
- 鐵路少年-練習(xí)及答案
- 2024年人教版小學(xué)語文六年級(jí)下冊(cè)第二單元測(cè)試卷(含答案解析)【可編輯打印】
- 統(tǒng)編版八年級(jí)語文下冊(cè) 24 唐詩三首練習(xí)題 (含答案)
- 混凝土抗壓強(qiáng)度統(tǒng)計(jì)評(píng)定表(自動(dòng)計(jì)算-數(shù)理-非數(shù)理)
評(píng)論
0/150
提交評(píng)論