程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#對象為Null形式(Null Object Pattern)實例教程

C#對象為Null形式(Null Object Pattern)實例教程

編輯:C#入門知識

C#對象為Null形式(Null Object Pattern)實例教程。本站提示廣大學習愛好者:(C#對象為Null形式(Null Object Pattern)實例教程)文章只能為提供參考,不一定能成為您想要的結果。以下是C#對象為Null形式(Null Object Pattern)實例教程正文


本文以實例情勢簡略講述了C#對象為Null形式(Null Object Pattern),分享給年夜家供年夜家參考。詳細完成辦法以下:

所謂的"對象為Null形式",就是請求開辟者斟酌對象為Null的情形,並設計出在這類情形下的應對辦法。

之前面"C#戰略形式(Strategy Pattern) "一文中的例子來講,在我們的客戶端法式中只斟酌了用戶輸出1,2,3的情形,假如用戶輸出其它數字,好比4,就沒有一個對應的IBall接話柄現類實例發生,因而會報以下的錯:

為了應對這類情形,我們專門設計一個類,當用戶輸出1,2,3以上的數字,就發生該類的實例。該類異樣完成IBall接口。

public class Others : IBall
{
    public void Play()
    {
      Console.WriteLine("您選擇的球類項目今朝還不存在~~");
    }
}

在客戶端法式中,修正為:

class Program
{
    static void Main(string[] args)
    {
      IBall ball = null;
      SportsMan man = new SportsMan();
      while (true)
      {
        Console.WriteLine("選擇你愛好的球類項目(1=足球, 2=籃球,3=排球)");
        string input = Console.ReadLine();
        switch (input)
        {
          case "1":
            ball = new Football();
            break;
          case "2":
            ball = new Basketball();
            break;
          case "3":
            ball = new Volleyball();
            break;
          default:
            ball = new Others();
            break;
        }
        man.SetHobby(ball);
        man.StartPlay();
      }
    }
}

以上,在swich語句中的default部門,當用戶輸出1,2,3之外的數字,就創立一個異樣完成IBall接口、專門處置Null的類實例。      

信任本文所述實例對年夜家C#法式設計的進修有必定的自創價值。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved