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


    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所示。

  • 相关阅读:
    SQL作业的操作全
    ISAPI Rewrite 实现简单url重写、二级域名重写
    wwf mvc学习
    如何扩大内需
    惊喜
    无限级分类查询
    杂记
    20130118SQL记录
    百度调价HttpWebRequest
    检查外链的方法
  • 原文地址:https://www.cnblogs.com/wodehao0808/p/4969365.html
Copyright © 2020-2023  润新知