null (C# Başvurusu)null (C# Reference)

null Anahtar sözcüğü, bir null başvuru, herhangi bir nesneye başvurmuyor birini temsil eden bir sabit değer.The null keyword is a literal that represents a null reference, one that does not refer to any object. null Başvuru türü değişkenlerin varsayılan değeridir.null is the default value of reference-type variables. Sıradan değer türleri null olamaz.Ordinary value types cannot be null. Ancak, C# 2.0 boş değer atanabilir türler kullanıma sunuldu.However, C# 2.0 introduced nullable value types. Bkz: boş değer atanabilir türler.See Nullable Types.

Aşağıdaki örnek, bazı davranışları null anahtar sözcüğü gösterir:The following example demonstrates some behaviors of the null keyword:


 class Program
 {
     class MyClass
     {
         public void MyMethod() { }
     }

     static void Main(string[] args)
     {
         // Set a breakpoint here to see that mc = null.
         // However, the compiler considers it "unassigned."
         // and generates a compiler error if you try to
         // use the variable.
         MyClass mc;

         // Now the variable can be used, but...
         mc = null;

         // ... a method call on a null object raises 
         // a run-time NullReferenceException.
         // Uncomment the following line to see for yourself.
         // mc.MyMethod();

         // Now mc has a value.
         mc = new MyClass();

         // You can call its method.
         mc.MyMethod();

         // Set mc to null again. The object it referenced
         // is no longer accessible and can now be garbage-collected.
         mc = null;

         // A null string is not the same as an empty string.
         string s = null;
         string t = String.Empty; // Logically the same as ""
         
         // Equals applied to any null object returns false.
         bool b = (t.Equals(s));
         Console.WriteLine(b);

         // Equality operator also returns false when one
         // operand is null.
         Console.WriteLine("Empty string {0} null string", s == t ? "equals": "does not equal");

         // Returns true.
         Console.WriteLine("null == null is {0}", null == null);


         // A value type cannot be null
         // int i = null; // Compiler error!

         // Use a nullable value type instead:
         int? i = null;

         // Keep the console window open in debug mode.
         System.Console.WriteLine("Press any key to exit.");
         System.Console.ReadKey();

     }
 }

C# dili belirtimiC# language specification

Daha fazla bilgi edinmek için, bkz. C# Dil Belirtimi.For more information, see the C# Language Specification. Dil belirtimi, C# sözdizimi ve kullanımı için kesin bir kaynaktır.The language specification is the definitive source for C# syntax and usage.

Ayrıca bkz.See also