C# - Is ve As Casting Uygulamalari
- Sevdanur GENC

- Apr 30, 2012
- 1 min read
Onceki makalelerimde C#'da Is ve As operatorlerinden bahsedip bir uygulama uzerinde bunlari kullanmisdik.
Simdi ise yine bu operatorlerin kullaniminda Object sinifi icerisindeki rol dagilimlarini yani casting olayini inceleyecegiz.
Object Nedir ?Object Nedir ?
Oncelikle Object hakkinda basit bir sekilde bahsedecek olursak, aslinda herseyin temelinde Object vardir diyebiliriz. Olusturdugumuz nesneler icin .Net platformunda bir baslangic noktasi olarak belirlenmistir. Olusturdugumuz her bir nesne aslinda System.Object namespace'inde ki object altinda bariniyordur.
Simdi uygulamalarimizi Is ve As operatorleri uzerinde ki object turunden cast islemlerini gerceklestirerek yapacak olursak...
Is Casting Islemi ;
using System;
using System.Text;
class Program
{
static void Main()
{
string StringDeger = "String bir deger...";
object
ObjectDeger = StringDeger; if (
ObjectDeger is object
) { Console.WriteLine("StringDeger icerisinde ki deger object'tir."); } if (
ObjectDeger is string
)
{
Console.WriteLine("StringDeger icerisinde ki deger string'tir.");
}
}
}
Uygulamanin Ekran Goruntusu ;
Goruldugu gibi, StringDeger degiskeni icerisinde ki veriyi object tipinde ki ObjectDeger degiskenine tasimamizla, if bloklarinda is operatorunu kullanarak her durumda StringDeger'in hem String tipinde oldugunu hemde Object tipinde oldugunu karsilastirabiliyoruz.
As Casting Islemi ;
using System;
using System.Text;
class Program
{
static void Main()
{
string StringDeger = "String bir deger...";
object
ObjectDeger = StringDeger; string AsDeneme =
ObjectDeger as string;
if (AsDeneme != null)
{
Console.WriteLine("ObjectDeger, string bir deger tasimaktadir...");
}
}
}
Uygulamanin Ekran Goruntusu;
Goruldugu gibi, Object tipindeki ObjectDeger degiskeni icerisine String tipinde ki StringDeger degiskeni atanmistir. Daha sonradan ObjectDeger'in Object sinifina ait oldugu halde string bir bilgiye ait veri tasiyorsa bunu as operatoru ile farkli bir degisken ismine atama islemi gerceklestirilip, karsilastiriyor ve ekrana yazdiriyor. Keyifli Calismalar Dilerim...
Comments