双人贪吃蛇java 代码_贪吃蛇课设--个人博客
一.課程設計團隊博客鏈接
1.2UML類圖
2.個人負責模塊或任務說明
黃色劃線部分為我負責的功能
3.代碼提交記錄
4.負責模塊詳細說明
蛇的移動模塊(使用了Timer類,通過設計刷新的時間,實現(xiàn)KeyListener和ActionListener接口實現(xiàn)對鍵盤按鍵和變量監(jiān)聽的方法,實現(xiàn)蛇的移動)
畫出界面模塊
難點是判斷位置的坐標,使用畫圖Graphics類,實現(xiàn)了Jpanel的paintComponent方法,用里面的paintIcon,setColor,fillRect等方法實現(xiàn)
音樂播放模塊
5.課設感想
一開始不知道怎么實現(xiàn)蛇的移動,使用鍵盤監(jiān)聽可以控制蛇的方向,但是怎么讓蛇動起來不知道,最后結(jié)合Timer刷新來實現(xiàn),簡單的說,游戲界面的實現(xiàn)就是監(jiān)聽鍵盤和變量,控制刷新的時間來實現(xiàn)的。在設置不同難度時,我一開始想直接判定蛇是否撞墻,但是這樣的代碼量太大了,讓我望而生畏,于是我定義一個wall數(shù)組,在畫墻的同時,把墻的坐標輸入wall數(shù)組中,這樣,只要判斷蛇頭是否與墻重合即可,同時,也不能忘了讓食物無法繪制在墻和蛇身上。在音樂播放界面中,我一開始用的不是wav格式,導致無法播放,然后在寫地址時也不是像圖片那么簡單,只要將圖片放入類的包中即可,而是要指向絕對路徑,這搞得我一頭霧水,最后實現(xiàn)了背景音樂和吃東西發(fā)出的聲音后,在自己找bug時發(fā)現(xiàn),當吃了7個東西之后背景音樂就停止了,我打開任務管理器查看CPU的占用,發(fā)現(xiàn)應該是我實現(xiàn)音樂的播放方式有問題,導致線程過多,當吃了7個東西時,CPU的占用突然就上升了百分之二十。但是繼續(xù)吃東西還是可以發(fā)出聲音的,這讓我十分疑惑。
6.展望
1.在音樂播放功能上,連吃七個東西后導致背景音樂的暫停,以后要多學習多線程的使用和學習問題如何解決。一開始要用javaFX技術(shù)實現(xiàn),但是在安裝上就花費了大量時間,導致不戰(zhàn)而退。
2.課設后我要進一步學習javaFX,用該技術(shù)來實現(xiàn)貪吃蛇,學習數(shù)據(jù)庫編程,存儲登錄信息。同時增加貪吃蛇的多線程功能,可以實現(xiàn)雙人貪吃蛇。
總結(jié)
以上是生活随笔為你收集整理的双人贪吃蛇java 代码_贪吃蛇课设--个人博客的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阳历时间转换为农历时间
- 下一篇: Orcad Capture CIS出BO