Home Kimler Online Bugünki Mesajlar Forumları Okundu Kabul Et
Geri git   KralForumuz.Biz -Bedava, indir, Film, Rapid,Rapidshare, Araba, Modifiye,Trendleri, Full, Mp3, Oyun, Okul öncesi, Program, Video, Msn, Eğitim, Ödev, Bilgiler, Resimleri, Wallpaper, Avatar, Aşk, Gençler, Muhabbet, Forum > Bilgisayar - Computer Help and Free Software Sharing > Yazılım - Software
Kayıt ol Yardım Üye Listesi Ajanda Arama Bugünki Mesajlar Forumları Okundu Kabul Et

Yeni Konu aç Cevapla
Add to Tagza.com: Social Bookmarking site Submit to AddThisTo Submit to Digg Submit to Reddit Submit to Furl Submit to Del.icio.us Submit to Google Submit to Yahoo! This Submit to Technorati Submit to StumbleUpon Submit to Spurl Submit to Netscape
 
Seçenekler Stil
Alt 11-30-2007, 03:41 PM   #1
Kullanıcı Profili
Kayıtlı Üye
 
QaFaDaR - ait Kullanıcı Resmi (Avatar)
Bilgiler
 
Üye No: 21
Üyelik tarihi: Nov 2007
Nerden: los angeles
Yaş: 22

Mesajlar: 1.752
Konular: 1417
Ettiği Teşekkür: 117
309 Mesajına 447 Kere Teşekkür Edlidi

Tecrübe Puanı: 2
Rep Puanı : 1436
Rep Seviyesi: QaFaDaR has much to be proud ofQaFaDaR has much to be proud ofQaFaDaR has much to be proud ofQaFaDaR has much to be proud ofQaFaDaR has much to be proud ofQaFaDaR has much to be proud ofQaFaDaR has much to be proud ofQaFaDaR has much to be proud of
QaFaDaR - MSN üzeri Mesaj gönder
Constructor Oluşturmak

Constructor Oluşturmak

Bir sınıfa “new” komutu ile yaratıldığı anda işletilecekse bu kod bloklarına Constructor oluşturmalısınız. C# ‘ da Constructor bloğu class ismiyle aynı olmak zorundadır. Projemize eklediğimiz sınıf aşağıdaki gibi olmalıdır.
namespace Siniflar
{
class ConstructorUygulama
{
public string yazi;
public ConstructorUygulama()
{
yazi = "Bu Bilgi Sınıftan geliyor";
}
}
}
Class’da kodumuzu yazdıktan sonra formumuza bir buton ekleyelim ve konumuzu yazalım.
private void button1_Click(object sender, EventArgs e)
{
ConstructorUygulama gelen = new ConstructorUygulama();
this.Text = gelen.yazi;
}
Burada kodumuzu çalıştırdığımızda sınıftan gelen deger yazacaktır.



BİRDEN FAZLA CONSTRUCTOR OLUŞTURMAK

Sınıf içerisinde birden fazla Constructor oluşturabilirsiniz. Buradan dikkat etmeniz gereken parametrelerin farklı olması gerekmektedir.



Dogru bir şekilde birden fazla Constructor oluşturmak için.

namespace Siniflar
{
class ConstructorUygulama
{
public string yazi;
public ConstructorUygulama()
{
yazi = "Bu Bilgi Sınıftan geliyor";
}
public ConstructorUygulama(string deger)
{
yazi = deger;
}
public ConstructorUygulama(int sayi)
{
yazi = sayi.ToString();
}
public ConstructorUygulama(string isim,string soyisim)
{
yazi = isim + " " + soyisim;
}
}
}
Burada 4 adet constructor oluşturduk. Kullanım esnasında bize 4 seçeneğinide kullanabilmemize sağlayan ifadeler çıkacaktır.



Burada bir tanesine uygun şekilde yazarak çalıştıralım

private void button1_Click(object sender, EventArgs e)
{
ConstructorUygulama gelen = new ConstructorUygulama("Selcuk", "Ozdemir");
this.Text = gelen.yazi;
}
Kodumuzu çalıştırdığımızda sonucu görebiliriz.




STATIC CONSTRUCTOR
C#.net de yenilik olarak adlandıracağım bir durum. Bir sınıfınız varsa, bu sınıfta static constructor tanımlayabilirsiniz, bu constructor sadece bir kere çalışıyor, ve genelde sınıfınızda static uyeler varsa onlara ilk deger vermek icin kullanılabilir.
namespace Siniflar
{
class StaticConst
{
public static string isimsoyisim;
static StaticConst()
{
isimsoyisim = "Selcuk Ozdemir";
}
}
}
Şeklinde sınıfımıza yazabiliriz. Formumuza bir buton ekleyerek sonucu görebiliriz.
private void button2_Click(object sender, EventArgs e)
{
this.Text = StaticConst.isimsoyisim;
}
Şeklinde yazdığımızda değerimiz aktarılacaktır.



Static Constructorlar parametre alamazlar.




STATIC METHODLAR
Sınıfa ait method ve değişkenlerin çağrılma seçeneklerini belirleyen bildiridir. Method ve değişkenin türetilecek olan alt değişkenle mi yoksa direk sınıfa ait işlemlemi çağılacağı belirler.
Sınıfımıza aşağıdaki kodumuzu yazalım.

namespace Siniflar
{
class StaticMethod
{
public StaticMethod()
{

}
public static void BilgiPenceresi(string mesaj)
{
System.Windows.Forms.MessageBox.Show(mesaj);
}
}
}
Kodumuzu yazalım. Daha sonra formumuza buton ekleyerek çalıştıralım. Burada sınıfı çağırırken NEW komutunun kullanılmadığına dikkat edin.

private void button3_Click(object sender, EventArgs e)
{
string deger = "Bu mesaj gelecek";
StaticMethod.BilgiPenceresi(deger);
}
Kodumuzu çalıştırdığımızda mesajımız mesaj kutusunda gelecektir.




GARBAGE COLLECTOR (Class’ları Bellekten Temizlemek)
Bellekte oluşan çöpleri temizlemek için kullanılır. Sınıf içerisindeki prosedür ile aynı Class’ı temizleme işlemi için kodu ise;
namespace Siniflar
{
class SinifTemizleme
{
public void temizbirsinif()
{
System.GC.SuppressFinalize(this);
}
}
}
Kodumuzu yazmamız yeterlidir. Garbage Collector’u daha iyi anlamak için örnek yapalım. Bunun için Formumuzu tasarlayalım.



Daha sonra projemize “Temizlik” adında bir sınıf oluşturalım. İçerisine kodumuzu yazalım.
namespace Siniflar
{
class Temizlik
{
public Temizlik()
{
System.Windows.Forms.MessageBox.Show("SINIF YUKLENDİ...");
}
~Temizlik() //destructor oluşturuldu
{
System.Windows.Forms.MessageBox.Show("Sınıf Bellekten Atılıyor");
}
public int KareHesapla(int deger)
{
int sonuc;
sonuc = deger * deger;
return sonuc;
}
public void tertemiz()
{
System.GC.SuppressFinalize(this);
}
}
}

Formumuza geri dönelim. Butonlara kodumuzu yazarak çalıştıralım.
Burada textboxımıza bir değer yazdığımızda Class butonu basarak işlemin yapıldığını göreceğiz. Temizle butonuna basmadan Kapak butonuna basarsak daha sonrasında, “Sınıf Bellekten Atılıyor” yazı geldikten sonra proje sonlandıralacaktır. Temizle butonuna bastıktan sonra kapat butonuna basarsak, proje direk olarak kapatılacaktır.

Sınıfları anlatmaya devam edeceğim.

Bir sonraki makalemde görüşmek üzere

Hayat Kisa Degmez Bir Kiza !!


Bazen arkada$lik bazen sevili olmakti a$k
Bana gore a$k fedakarlikti
Bazen susmayi bilmek bazende dogru $eyleri konu$makti
A$in icinde engeller oyunlar firtinlar yoktu
A$k birbirini yipratmak degildi cunku
A$k sinirsizca sorgusuzca sonsuzca sevmekti

blok sıteme gırıs : [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
QaFaDaR isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Yeni Konu aç Cevapla
Tags: ,



Seçenekler
Stil

Yetkileriniz
Yeni Mesaj yazma yetkiniz aktif değil dir.
Mesajlara Cevap verme yetkiniz aktif değil dir.
Eklenti ekleme yetkiniz aktif değil dir.
Kendi Mesajınızı değiştirme yetkiniz aktif değil dir.

Smileler Açık
[IMG] Kodları Açık
HTML-KodlarıKapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı


Bütün Zaman Ayarları WEZ olarak düzenlenmiştir. Şu Anki Saat: 06:02 PM .


Powered by KralForum
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
kralforum.
eXTReMe Tracker

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247