首页 > Windows开发 > 详细

(原创)c#学习笔记10--定义类成员06--示例应用程序01--规划应用程序

时间:2015-11-16 17:12:49      阅读:317      评论:0      收藏:0      [点我收藏+]

10.6  示例应用程序

  为了解释前面使用的一些技术,下面开发一个类模块,以便在后续章节中使用。这个类模块包含两个类:

    Card——表示一张标准的扑克牌,包含梅花、方块、红心和黑桃,其顺序是从A到K。

    Deck——表示一副完整的 52 张扑克牌,在扑克牌中可以按照位置访问各张牌,并可以洗牌。

  再开发一个简单的客户程序,确保程序正常工作,但在整个扑克牌应用程序中不使用扑克牌。

 

10.6.1  规划应用程序

  这个应用程序的类库Ch10CardLib包含类。在开始编写代码前,应规划一下需要的结构和类的功能。

  1. Card类

  Card类基本上是两个只读字段suit和rank的容器。把字段指定为只读的原因是“空白”的牌是没有意义的,牌在创建好后也不能修改。为此,要把默认的构造函数指定为私有,并提供另一个构造函数,从给定的suit和rank中建立一副扑克牌。 

  此外,Card类要重写System.Object的ToString()方法,这样才能获得人们可以理解的字符串,以表示扑克牌。为使编码简单一些,为两个字段suit和rank提供枚举。

  Card类如图10-8所示。

技术分享

  2. Deck类

  Deck类包含52个Card对象。我们为这些时象使用一个简单的数组类型。这个数组不能直接访问,因为对Card对象的访问要通过GetCard()方法来实现,该方法返回指定索引的Card对象。这个类也有一个Shuffle()方法,重新安排数组中的牌,所以它应如图10-9所示。

技术分享

 

(原创)c#学习笔记10--定义类成员06--示例应用程序01--规划应用程序

原文:http://www.cnblogs.com/wodehao0808/p/4969365.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!