zoukankan      html  css  js  c++  java
  • (原创)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所示。

  • 相关阅读:
    td内元素居顶,td元素不随高度的撑开而变位置
    C#连接MySql数据库的方法
    福昕阅读器注册码
    html初始化
    解决android的ListView嵌套在ScrollView中不能被滚动的问题
    popupWindow弹出来后,背景变暗,半透明
    android自定义radiobutton样式文字颜色随选中状态而改变
    下拉刷新
    android去掉顶部标题栏
    android使用微软雅黑字体
  • 原文地址:https://www.cnblogs.com/wodehao0808/p/4969365.html
Copyright © 2011-2022 走看看