Computer >> Máy Tính >  >> Lập trình >> C#

Làm thế nào để triển khai Mẫu đối tượng Null trong C #?

Mẫu đối tượng null giúp chúng ta viết một mã sạch, tránh kiểm tra null nếu có thể. Sử dụng mẫu đối tượng null, người gọi không phải quan tâm xem chúng có đối tượng null hay đối tượng thực. Không thể triển khai mẫu đối tượng null trong mọi trường hợp. Đôi khi, có khả năng trả về tham chiếu null và thực hiện một số kiểm tra null.

Ví dụ

static class Program{
   static void Main(string[] args){
      Console.ReadLine();
   }
   public static IShape GetMobileByName(string mobileName){
      IShape mobile = NullShape.Instance;
      switch (mobileName){
         case "square":
         mobile = new Square();
         break;

         case "rectangle":
         mobile = new Rectangle();
         break;
      }
      return mobile;
   }
}

public interface IShape {
   void Draw();
}
public class Square : IShape {
   public void Draw() {
      throw new NotImplementedException();
   }
}
public class Rectangle : IShape {
   public void Draw() {
      throw new NotImplementedException();
   }
}
public class NullShape : IShape {
   private static NullShape _instance;
   private NullShape(){ }
   public static NullShape Instance {
      get {
         if (_instance == null)
            return new NullShape();
            return _instance;
         }
     }
      public void Draw() {
   }
}