posts - 5,  comments - 5,  trackbacks - 0

          概要
          C# 是一種面向?qū)ο蟮木幊陶Z言。 可以定義類以表示應用程序中的類型,然后創(chuàng)建對象作為這些類的實例。

          在 C# 中,類可以包含字段、方法、屬性和索引器。 在本文中,您將學習如何在 C# 中新建一個表示棒球隊 (Baseball Team) 的類。 將給該類定義字段、方法和屬性。接著將創(chuàng)建此類類型的一個對象并利用其方法和屬性。

          新建類
          1. 從項目菜單上,單擊添加類。?
          2. 在添加新項對話框的類名中,鍵入 BaseballTeam,然后單擊打開。?
          3. 在“代碼視圖”窗口中檢查該新類的代碼。?

          定義字段和構(gòu)造函數(shù)
          1. 在視圖菜單上,單擊類視圖。 在“類視圖”窗口中,展開 ClassesAndObjects 項目,然后展開 ClassesAndObjects 名稱空間。 右鍵單擊 BaseballTeam 類,選擇添加,然后單擊添加字段。?
          2. 在 C# 字段向?qū)е校瑢⒆侄卧L問設置為 private,并將字段類型設置為 string。 在字段名中,鍵入 name。單擊完成。 此時,就會將以下字段添加到該類中:
          private string name;
          ?
          3. 重復步驟 1 和 2(或手動鍵入代碼)以添加另一個字段,如下所示:
          private string stadium;
          ?
          4. 再添加兩個字段,并提供初始字段值,如下所示:
          ?private int wins = 0;
          private int defeats = 0;
          ?
          5. 修改該類的構(gòu)造函數(shù),以初始化球隊和體育場 (stadium) 的名稱:
          public BaseballTeam(string n, string s)
          {
          ?? this.name = n;
          ?? this.stadium = s;
          }

          定義方法
          1. 在類視圖中,右鍵單擊 BaseballTeam 類。 選擇添加,然后單擊添加方法。?
          2. 將方法訪問設置為 public,并將返回類型設置為 void。 在方法名稱中,鍵入 PlayGame。 添加兩個名為 runsFor 和 runsAgainst 的 int 參數(shù)。單擊完成。 此時,就會將以下方法添加到該類中:
          public void PlayGame(int runsFor, int runsAgainst)
          {
          }
          3. 定義方法體,如下所示:
          public void PlayGame(int runsFor, int runsAgainst)
          {
          ?? if (runsFor > runsAgainst)
          ????? this.wins++;
          else
          ????? this.defeats++;
          }
          4. C# 中的所有類最終都是從名為 Object 的基類繼承而來的。此類定義了所有類的通用功能。以 ToString 方法為例,它返回一個字符串形式的類狀態(tài)。 在您的 BaseballTeam 類中重寫此方法,如下所示: public override string ToString()
          {
          ?? return this.name + ", play at " + this.stadium + ": " +
          ????????? " W" + this.wins + " L" + this.defeats;
          }

          定義重載方法
          C# 支持重載方法,它是指名稱相同但簽名不同的方法。 在下面的步驟 2 中,將定義 PlayGame 方法的一個重載版本,該方法將比賽結(jié)果作為參數(shù)。
          1. 首先,在 BaseballTeam 類中定義一個 enum,如下所示: public enum Result {Win, Lose}
          2. 另創(chuàng)建一個 PlayGame 方法,如下所示: public void PlayGame(Result r)
          {
          ?? if (r == Result.Win)
          ????? this.wins++;
          ?? else if (r == Result.Lose)
          ????? this.defeats++;
          }

          定義屬性
          1. 在類視圖中,右鍵單擊 BaseballTeam 類。 選擇添加,然后單擊添加屬性。?
          2. 將屬性訪問設置為 public,并將屬性類型設置為 double。 在屬性名中,鍵入 Record。 單擊 get 單選按鈕,然后單擊完成。 此時,就會將以下屬性添加到該類中: public double Record
          {
          ?? get
          ?? {
          ????? return 0;
          ?? }
          }
          3. 按以下方式修改該屬性,使其返回棒球隊的比賽記錄(例如,如果本隊贏得 10 場比賽,輸?shù)?10 場比賽,則該隊的記錄為 0.5): public double Record
          {
          ?? get
          ?? {
          ????? int played = this.wins + this.defeats;
          ????? return (double)this.wins / played;
          ?? }
          }
          4. 添加一個名為 Ballpark 的獲取/設置屬性,如下所示。 該屬性允許讀取或更改棒球隊的 stadium 字段: public string Ballpark
          {
          ?? get
          ?? {
          ????? return this.stadium;
          ?? }
          ?? set
          ?? {
          ????? this.stadium = value;? // value is an implicit parameter
          ?? }
          }

          創(chuàng)建并使用一個對象
          1. 在“代碼視圖”窗口中顯示 Class1.cs 的代碼。?
          2. 在 Main 方法中,使用 new 運算符創(chuàng)建一個 BaseballTeam 對象。 將對該對象的引用賦值給 BaseballTeam 局部變量,如下所示:
          BaseballTeam sf = new BaseballTeam("San Francisco Giants",
          ?????????????????????????????????? "Candlestick Park");
          3. 添加下列代碼以便在對象上測試公用方法:
          sf.PlayGame(7, 2);
          sf.PlayGame(BaseballTeam.Result.Lose);
          4. 添加下列語句以檢驗對象的屬性:
          Console.Out.WriteLine("Record: " + sf.Record);
          sf.Ballpark = "3Com Park";
          5. 顯示對象的當前狀態(tài),如下所示:
          Console.Out.WriteLine(sf.ToString());
          6. 將對該對象的引用設置為 null,表明您不再需要 BaseballTeam 對象。 這樣,就可以將該對象作為垃圾回收(注意,C# 沒有 delete 運算符):
          sf = null;

          ?
          posted on 2006-10-20 16:35 曾科 閱讀(1045) 評論(1)  編輯  收藏 所屬分類: C#

          FeedBack:
          # re: HOW TO:在 C# .NET 中創(chuàng)建類和對象
          2007-09-25 08:41 |
          謝謝了 我收藏了  回復  更多評論
            
          <2007年9月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          常用鏈接

          留言簿(3)

          隨筆檔案

          文章分類

          文章檔案

          相冊

          .net

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 景东| 德保县| 绿春县| 榆社县| 兴和县| 拜城县| 准格尔旗| 德保县| 封丘县| 广元市| 常熟市| 达拉特旗| 通山县| 吉首市| 大邑县| 南部县| 若尔盖县| 阆中市| 广昌县| 永清县| 峨山| 兰州市| 醴陵市| 成武县| 闵行区| 略阳县| 万宁市| 江陵县| 牙克石市| 栾城县| 遂川县| 吉木乃县| 仁寿县| 定州市| 漳州市| 蓬安县| 遵化市| 商河县| 宜川县| 镇原县| 静安区|