| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1207 人关注过本帖, 1 人收藏
标题:C#入门精典中的一个例子看不懂请帮助小弟!!
取消只看楼主 加入收藏
陈新建
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-10-17
收藏(1)
 问题点数:0 回复次数:0 
C#入门精典中的一个例子看不懂请帮助小弟!!
Card类:
程序代码:
public class Card
{
      public readonly Suit suit;
      public readonly Rank rank;
      public override string ToString()
      {
         return "The " + rank + " of " + suit + "s";
      }
      private Card()
      {
      }
      public Card(Suit newSuit, Rank newRank)
      {
         suit = newSuit;
         rank = newRank;
      }
}


Deck类:
程序代码:
public class Deck
{           
    public Deck()
    {
        cards = new Card[52];
        for (int suitVal = 0; suitVal < 4; suitVal++)
        {
            for (int rankVal = 1; rankVal < 14; rankVal++)
            {
                cards[suitVal * 13 + rankVal -1] = new Card((Suit)suitVal,(Rank)rankVal);
            }
        }
    }

    private Card[] cards;

    public Card GetCard(int cardNum)
    {
        if (cardNum >= 0 && cardNum <= 51)
        return cards[cardNum];
    }
}


控制台程序入口:
程序代码:
static void Main(string[] args)
{
    Deck myDeck = new Deck();
    myDeck.Shuffle();
    for (int i = 0; i < 52; i++)
    {
        Card tempCard = myDeck.GetCard(i);
        Console.Write(tempCard.ToString());
        if (i != 51)
        Console.Write(", ");
        else
        Console.WriteLine();
    }
}


我有两个问题:
一,我不明白其中Deck类的字段为什么可以这样定义private card[] cards?
二,为什么可以直接调用Card类中的重写的ToString方法?
搜索更多相关主题的帖子: 例子 入门 精典 
2008-10-17 11:28
快速回复:C#入门精典中的一个例子看不懂请帮助小弟!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011659 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved