freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于安卓的五子棋游戲(編輯修改稿)

2025-01-11 01:14 本頁面
 

【文章內容簡介】 隔的緊緊相連,且在此 3 子兩端延長線上各有一個無子的交叉點與此 3 子緊緊相連 活二:在棋盤上,再走一步可成活三的點 眠三:在棋盤上,再走一步可成沖四的點 眠二:在走一步可成眠三的點 程序設計分析 1. 繪制棋盤, 14 條橫線, 14 條豎線,在直線交點處下棋子。 2. 界面中的棋盤通過 onDraw 函數(shù)進行繪制,而黑白子通過引用圖片顯示在棋盤上。 3. 白子先行,黑白交替下子。邊框的的交接點無法落子,故棋盤實際可以進行落子的范圍為 12 12 格 。 4. 玩家落子之后,電腦需要判定棋盤的某一位置是否 有棋子,并在棋盤上,選擇一個最佳位置落子。 5. 當任何一方有五個棋子沿著橫,豎,斜連在一起時,系統(tǒng)自動判斷贏棋,并顯示黑方或白方勝利。棋局結束后,任何一方均不能繼續(xù)操作。 6 數(shù)據流圖 該五子棋的主要程序流圖如圖 31 所示。 圖 31 程序流程圖 圖 31 顯示 當任何一方有五個棋子沿著橫,豎,斜連在一起時,系統(tǒng)自動判斷贏棋,并顯示黑方或白方勝利。棋局結束后,任何一方均不能繼續(xù)操作。 4 詳細設計 用例圖 用例圖就是由主角、用例以及它們之間的關系構成的圖。該圖說明了用例模型中的關系。 可以將用 例圖組織到用例包中,并歸用例包所有,讓特定包中僅顯示互為關聯(lián)關系的內容。用例圖由參與者( Actor)、用例( Use Case)、系統(tǒng)邊界、箭頭7 組成,用畫圖的方法來完成。 參與者不是特指人,是指系統(tǒng)以外的,在使用系統(tǒng)或與系統(tǒng)交互中所扮演的角色。因此參與者可以是人,可以是事物,也可以是時間或其他系統(tǒng)等等。還有一點要注意的是,參與者不是指人或事物本身,而是表示人或事物當時所扮演的角色。參與者在畫圖中用簡筆人物畫來表示,人物下面附上參與者的名稱,例如圖 41 所示。 圖 41 角色 用例是對包括變量在內的一組動作 序列的描述,系統(tǒng)執(zhí)行這些動作,并產生傳遞特定參與者的價值的可觀察結果。我們可以給用例取一個簡單、描述性的名稱,一般為帶有動作性的詞。用例在畫圖中用橢圓來表示,橢圓下面附上用例的名稱,例如圖 42 所示。 圖 42 用例 系統(tǒng)邊界是用來表示正在建模系統(tǒng)的邊界。邊界內表示系統(tǒng)的組成部分,邊界外表示系統(tǒng)外部。系統(tǒng)邊界在畫圖中方框來表示,同時附上系統(tǒng)的名稱,參與者畫在邊界的外面,用例畫在邊界里面。因為系統(tǒng)邊界的作用有時候不是很明顯,所以我個人理解,在畫圖時可省略。 箭頭用來表示參與者和系統(tǒng)通過相互發(fā)送信號或消息進 行交互的關聯(lián)關系。箭頭尾部用來表示啟動交互的一方,箭頭頭部用來表示被啟動的一方,其中用例總是要由參與者來啟動。 用例圖主要的作用有三個:( 1)獲取需求;( 2)指導測試;( 3)還可在整個過程中的其它工作流起到指導作用。 對問題做出了分析之后,就可以根據分析的結果畫出用例圖了,因為下棋的角色是人,所以角色就是下棋者,下棋者直接發(fā)生的動作是點擊鼠標,在棋盤上繪制棋子,所以就有可以把整個下棋的過程分為兩個用例。繪制棋盤界面和點擊8 鼠標下棋,點擊鼠標下棋包含了繪制棋子的動作,繪制棋子界面包括繪制控制界面,繪制消息界面, 和他直接的棋盤界面。用例圖如 圖 43 所示 。 圖 43 五子棋用例圖 類圖 類圖是顯示了模型的靜態(tài)結構,特別是模型中存在的類、類的內部結構以及它們與其他類的關系等。類圖不顯示暫時性信息。類圖 (Class diagram)是最常用的 UML 圖,顯示出類、接口以及它們之間的靜態(tài)結構和關系;它用于描述系統(tǒng)的結構化設計。 類圖最基本的元素是類或者接口。 類圖通常包含如下的內容:類、接口、協(xié)作、關系。 同其他的圖一樣,類圖也可以包含注解和限制,類圖中也可以包含包和子系統(tǒng),這兩者用來將元素分組。有時后你也可以將 類的實例放到類圖中。 1. 類( Class) 類一般包含 3 個組成部分。第一個是類名;第二個是屬性( attributes);第三個是該類提供的方法( 類的性質可以放在第四部分;如果類中含有內部類,則會出現(xiàn)第五個組成部分)。類名部分是不能省略的,其他組成部分可以省略。類圖的畫法如圖 44。 9 圖 44 類 2. 包( Package) 包是一種常規(guī)用途的組合機制。 UML 中的一個包直接對應于 Java 中的一個包。在 Java 中,一個包可能含有其他包、類或者同時含有這兩者。進行建模時,通常 使用邏輯性的包,用于對模型進行組織;使用物理性的包,用于轉換成系統(tǒng)中的 Java 包。每個包的名稱對這個包進行了惟一性的標識。 3. 接口( Interface) 接口是一系列操作的集合,它指定了一個類所提供的服務。它直接對應于Java 中的一個接口類型。接口的表示有大概兩種方式。具體畫法見圖 45。 圖 45 接口 4. 關系 常見的關系有:一般化關系( Generalization),關聯(lián)關系( Association),聚合關系( Aggregation),合成關系 ( Composition),依賴關系( Dependency)。 10 其中,聚合關系( Aggregation),合成關系( Composition)屬于關聯(lián)關系( Association)。一般關系表現(xiàn)為繼承或實現(xiàn)關系 (is a),關聯(lián)關系表現(xiàn)為變量(has a ),依賴關系表現(xiàn)為函數(shù)中的參數(shù) (use a)。 一般化關系:表示為類與類之間的繼承關系,接口與接口之間的繼承,類對接口的實現(xiàn)關系。表示方法: 用一個空心箭頭+實線,箭頭指向父類?;蚩招募^+虛線,如果父類是接口。 對于每個機制,確定類、接口 和其他的參與這個協(xié)作的協(xié)作。同時確定這些事物之間的關系。用場景來預排這些事物,沿著這條路你將發(fā)現(xiàn)模型中忽略的部分和定義錯誤的部分。 確定用這些事物的內容來填充它們。對于類,開始于獲得一個責任(類的職責),然后,將它轉化為具體的屬性和方法。 通過對各個類的屬性和方法分析,可以畫出一下類圖,如圖 46 所示。 圖 46 五子棋類圖 棋盤界面設計 分析了設計思想,有了算法,并且畫出了用例圖,類圖,之后就可以開始設計界面了,對界面的設計也可以理解為對類的設計,此界面主要通過類GobangView 進 行設計。 GobangView 類也是主要的類,該類的主要作用是繪制棋盤,包括棋盤方格和邊框,并組織五子棋窗口的下棋面板, 并顯示消息面板,還初始化了棋盤上各個落棋點的位置。 11 畫棋盤 此部分主要使用 onDraw 進行繪制,其主要實現(xiàn)代碼如下: public void onDraw(Canvas canvas) { ()。 { Paint paintRect = new Paint()。 ()。 (2)。 ()。 for (int i = 0。 i GRID_SIZE。 i++) { for (int j = 0。 j GRID_SIZE。 j++) { int mLeft = i * grid_width + mStartX。 int mTop = j * grid_width + mStartY。 int mRright = mLeft + grid_width。 int mBottom = mTop + grid_width。 (mLeft, mTop, mRright, mBottom, paintRect)。 } } 畫棋子 此棋子通過使用圖片進行繪制,其部分實現(xiàn)代碼如下: Drawable tile = ()。 其中 chess1 是需要引用圖片 的名稱,存在 drawable 文件中。 結束提示語顯示 提示語顯示使用函數(shù) mtext,并分 3 種情況顯示提示語,其部分實現(xiàn)代碼如下: private CharSequence mText。 private CharSequence STRING_WIN = 白棋贏 ! \n 按中鍵開始新游戲。 。 private CharSequence STRING_LOSE = 黑棋贏 ! \n 按中鍵開始新游戲。 。 private CharSequence STRING_EQUAL = 酷!你們是平 手 ! \n 按中鍵開始新游戲。 。 if (checkWin(WHITE)) { mText = STRING_WIN。 mGameState = GAMESTATE_END。 showTextView(mText)。 } else if (checkFull()) { mText = STRING_EQUAL。 mGameState = GAMESTATE_END。 showTextView(mText)。 } whoTurn = BL
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1