C# 6.0 İle Using Static Kullanımı


3 Ekim 2015 Hikmet Okumuş C#

Using Static, sınıfların içerisindeki static metodları sınıf ismi yazmadan doğrudan kullanılmasını sağlamaktadır. C# 6.0 ile gelen bu ve diğer özellikleri kullanabilmeniz için Visual Studio 2015 IDE gerekmektedir. Aşağıdaki uygulama "Console" sınıfı içerisinde bulunan "WriteLine" metodu ile ekrana girilen değeri yazmaktadır.
		using System;
		using System.Collections.Generic;
		using System.Linq;
		using System.Text;
		
		namespace Sample
		{
		    class Program
		    {
		        static void Main(string[] args)
		        {
		            Console.WriteLine("Using Static kullanımı");
		            Console.Read();
		        }
		    }
		}
		
"WriteLine" metoduna ulaşabilmemiz için öncelikle sınıf ismini yazıyoruz, sonrasında metodu çağırıyoruz. Bunun gibi static metodları doğrudan çağırmak için "Using Static" özelliğinden yararlanıyoruz. Yukarıdaki gibi using ile namespace eklemek istediğimizde aşağıdaki gibi sadece namespace isimleri görüntülenmektedir.
www.hikmetokumus.com
Eğer namespace yerine doğrudan bir classı using ile eklemek istersek Using Static ifadesini kullanmamız gerekmektedir. Bu şekilde static sınıflarda listelenecektir.
www.hikmetokumus.com
Bu işlem sonrasında artık static metodları doğrudan sınıf ismi yazmadan kullanabilmekteyiz.
		using System;
		using System.Collections.Generic;
		using System.Linq;
		using System.Text;
		using static System.Console;
		
		namespace Sample
		{
		    class Program
		    {
		        static void Main(string[] args)
		        {
		            WriteLine("Using Static kullanımı");
		            Read();
		        }
		    }
		}
		
Aşağıdaki gibi birden fazla sınıfı using static ile tanımlayabilirsiniz.
		using System;
		using System.Collections.Generic;
		using System.Linq;
		using System.Text;
		using static System.Console;
		
		namespace Sample
		{
		    class Program
		    {
		        static void Main(string[] args)
		        {
		            bool fileStatus = System.IO.File.Exists("Path");
		
		            System.IO.Directory.CreateDirectory("Path");
		
		            Read();
		        }
		    }
		}
		
Using Static ile aşağıdaki gibi kodu kısaltabiliriz.
		using System;
		using System.Collections.Generic;
		using System.Linq;
		using System.Text;
		using static System.Console;
		using static System.IO.File;
		using static System.IO.Directory;
		
		namespace Sample
		{
		    class Program
		    {
		        static void Main(string[] args)
		        {
		            bool fileStatus = Exists("Path");
		
		            CreateDirectory("Path");
		
		            Read();
		        }
		    }
		}
		
Yukarıdaki kod derlendiği zaman aşağıdaki gibi bir hata alınacaktır.
www.hikmetokumus.com
Using Static ile "File" ve "Directory" sınıflarını ekledik ve her iki sınıfında static metodlarını doğrudan kullanabilmekteyiz. İki sınıf içerisinde de "Exists" adlı metod geçtiği için derleyici hangi metodu çağırdığımızı bilmemektedir. Bu hatayı gidermek için hangi sınıfın altındaki metodu çağırdığımızı belirtmemiz gerekmektedir.
		using System;
		using System.Collections.Generic;
		using System.Linq;
		using System.Text;
		using static System.Console;
		using static System.IO.File;
		using static System.IO.Directory;
		
		namespace Sample
		{
		    class Program
		    {
		        static void Main(string[] args)
		        {
		            bool fileStatus = System.IO.File.Exists("Path");
		
		            CreateDirectory("Path");
		
		            Read();
		        }
		    }
		}
		
Yukarıdaki gibi düzenlediğimizde derleyici artık hata vermeyecektir.

Başarılar dilerim.



Yorum Ekle