C# 規(guī)劃應(yīng)用程序
這個(gè)應(yīng)用程序的類庫(kù)ChlOCaidLib包含一些類。但在開(kāi)始編寫(xiě)代碼前,應(yīng)規(guī)劃一下需要的結(jié)構(gòu)和類的功能。
1.Card 類
Card類基本上是兩個(gè)只讀字段suit和rank的容器。把字段指定為只讀的原因是“空白”的牌是沒(méi)有意義的,牌在創(chuàng)建好后也不能修改。為此,要把默認(rèn)的構(gòu)造函數(shù)指定為私有,并提供另一個(gè)構(gòu)造函數(shù),使用給定的suit和rank建立一張撲克牌,
此外,Card類要重寫(xiě)System.Object的ToStringO方法,這樣才能獲得人們可以理解的字符串,以表示撲克牌。為使編碼簡(jiǎn)單一些,為兩個(gè)字段suit和rank提供枚舉。
2.Deck 類
Deck類包含52個(gè)Card對(duì)象。我們?yōu)檫@些對(duì)象使用一個(gè)簡(jiǎn)單的數(shù)組類型。這個(gè)數(shù)組不能直接訪問(wèn),因?yàn)閷?duì)Card對(duì)象的訪問(wèn)要通過(guò)GetCaidO方法來(lái)實(shí)現(xiàn),該方法返回指定索引的Card對(duì)象。這個(gè)類也應(yīng)有一個(gè)Shuffle()方法,用于重新排列數(shù)組中的牌。Deck類如圖所示。
點(diǎn)擊加載更多評(píng)論>>