İPUCU

C# j# vb.net (.NET dilleri) Bu dillerin eğitim videolarının, open source projelerin ve gerekli dökümanların paylaşım alanı.

Seçenekler

C# da Try Catch yapısı

03-04-2018 08:51
#1
prototyqe - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
11/2011
Nereden:
Chicago İL
Mesajlar:
5.211
Teşekkür (Etti):
1724
Teşekkür (Aldı):
1478
Konular:
2353
C# da Try Catch yapısını inceleyeceğiz.İlk önce formumuza girip 3 Label,2 Textbox ,1 Button oluşturuyoruz.Sonra buttona çift tıklayarak aşağıdaki kodları yazıyoruz.

Kod:
try // hata olmadığında çalışır.
            {
                int sayi1, sayi2, toplam;
                sayi1 = int.Parse(textBox1.Text);
                sayi2 = int.Parse(textBox2.Text);
                toplam = sayi1 / sayi2;
                label1.Text = toplam.ToString();


            }
            catch (Exception hata) // hata olduğunda çalışır.
            {
                MessageBox.Show(hata.Message);

            }
            finally // her iki durumdada çalışır.
            {
                textBox1.Text = ""; //  textBox1.Clear(); aynı işlemi yapar.
                textBox2.Text = "";
                

            }
Kullanıcı İmzası
Mrcem, zztri Teşekkür etti.

03-04-2018 09:08
#2
Mrcem - ait Kullanıcı Resmi (Avatar)
Forumun Yüz Karası
Üyelik tarihi:
03/2018
Yaş:
24
Mesajlar:
157
Teşekkür (Etti):
8
Teşekkür (Aldı):
10
Konular:
10
Kardeş bu programı sen yazmadığını bilip şuan içimden yağdırıyorum

Label1 text içinde string yapacağına string tanımla
Toplam işlemindede mutlaka parantez kullan
Textbox clear kısmında boş bırakılmış bide onuda söyleyeyim textbox1.clear(); daha güzel olurdu
03-04-2018 09:59
#3
Huaweis - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
07/2016
Mesajlar:
1.218
Teşekkür (Etti):
170
Teşekkür (Aldı):
105
Konular:
87
Alıntı:
Mrcem´isimli üyeden Alıntı Mesajı göster
Kardeş bu programı sen yazmadığını bilip şuan içimden yağdırıyorum

Label1 text içinde string yapacağına string tanımla
Toplam işlemindede mutlaka parantez kullan
Textbox clear kısmında boş bırakılmış bide onuda söyleyeyim textbox1.clear(); daha güzel olurdu
İçinden yağdırmana gerek yok çünkü program her şeyi ile en kaliteli halinde. Hem sen bu kodları onun yazmadığını nerden biliyorsan. Geçen gün zztri abimiz program gerçekten çok kötü olduğu için öyle dedi bu programda senin dedeiğin şeyler pek elle tutulan hatalar değil hatta hata değil.
Kullanıcı İmzası
______ WARNİNG ______
______ HŪΔШΣIЅ ______
zztri Teşekkür etti.
03-04-2018 10:15
#4
zztri - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
07/2015
Nereden:
Ankara
Mesajlar:
9.356
Teşekkür (Etti):
1766
Teşekkür (Aldı):
3959
Konular:
68
Alıntı:
Mrcem´isimli üyeden Alıntı Mesajı göster
Kardeş bu programı sen yazmadığını bilip şuan içimden yağdırıyorum
Ben dışımdan yağdıracağım.

Alıntı:
Mrcem´isimli üyeden Alıntı Mesajı göster
Label1 text içinde string yapacağına string tanımla
Sonra string'le nasıl aritmetik işlem yapacak?

Alıntı:
Mrcem´isimli üyeden Alıntı Mesajı göster
Toplam işlemindede mutlaka parantez kullan
Hayır kullanma, 100% gereksiz.

Alıntı:
Mrcem´isimli üyeden Alıntı Mesajı göster
Textbox clear kısmında boş bırakılmış bide onuda söyleyeyim textbox1.clear(); daha güzel olurdu
Fonksiyon çağırma ile property çağırma, kaynak harcaması bakımından eşdeğer. textbox1.Text="" de olur, textbox1.Clear() de.


Neyse konuya dönelim, üstad catch'ten sonra, eğer "exception" objesini kullanmayacaksak tanımlamak zorunda değiliz. Mesela diyelim, inanılmaz miktarda hafıza yiyen bir işlem yapıyoruz, MemoryOverflowException gelebilir biliyoruz.

Kod:
try {
  .....
} catch (MemoryOverflowException) {
  MessageBox.Show("RAM al kurban, hafızan bitti...");
}
diyebiliriz. Neden? Exception detayları verilse bile kullanmayacağız, boşuna compiler stacktrace adını verdiğimiz yığını oluşturmak için vakit kaybetmesin.

Hatta diyelim ki başka hiç bir hatanın çıkmayacağından eminiz;

Kod:
try {
  .....
} catch {
  MessageBox.Show("RAM al kurban, hafızan bitti...");
}
Deriz. Exception'ın ne olacağını nasıl olsa biliyoruz. Bunu da konuya eklersen tam olmuş olur.
Kullanıcı İmzası
Gayrıresmi Trolleme Kulübü Kurucu Üyesi...

Sii Şarp: 430%
Site yapmah: 386%
Piieyçpii: 396.8%
Cava: 205%
Andıroyid: 37.9²%
Nodjiies: 196%
Sii artı artı: 342.333333334%
Yuniti: 154%
Paytın 304%
Bat dosyasıyla hedef çökertme: 96i+382√17%
Konu zztri tarafından (03-04-2018 10:35 Saat 10:35 ) değiştirilmiştir.
Mrcem, Huaweis Teşekkür etti.
03-04-2018 11:50
#5
Mrcem - ait Kullanıcı Resmi (Avatar)
Forumun Yüz Karası
Üyelik tarihi:
03/2018
Yaş:
24
Mesajlar:
157
Teşekkür (Etti):
8
Teşekkür (Aldı):
10
Konular:
10
Alıntı:
Huaweis´isimli üyeden Alıntı Mesajı göster
İçinden yağdırmana gerek yok çünkü program her şeyi ile en kaliteli halinde. Hem sen bu kodları onun yazmadığını nerden biliyorsan. Geçen gün zztri abimiz program gerçekten çok kötü olduğu için öyle dedi bu programda senin dedeiğin şeyler pek elle tutulan hatalar değil hatta hata değil.
Zztri açıklamış demek istediklerimi
03-04-2018 13:21
#6
prototyqe - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
11/2011
Nereden:
Chicago İL
Mesajlar:
5.211
Teşekkür (Etti):
1724
Teşekkür (Aldı):
1478
Konular:
2353
Beyler sakin olun bana yağdırmanız yada saydırmanız pek umrumda değil bu konular sadece bu işe yeni başlayanların yada takılanların çıkış anahtarı ögrenmeye çalışanlar için elinden tutan konular ekleyeceginiz birşey varsa ekleyin daha iyisini yapabiliyorsanız yapın.
saygılar - prototyqe
Kullanıcı İmzası
03-04-2018 13:50
#7
Mrcem - ait Kullanıcı Resmi (Avatar)
Forumun Yüz Karası
Üyelik tarihi:
03/2018
Yaş:
24
Mesajlar:
157
Teşekkür (Etti):
8
Teşekkür (Aldı):
10
Konular:
10
Alıntı:
prototyqe´isimli üyeden Alıntı Mesajı göster
Beyler sakin olun bana yağdırmanız yada saydırmanız pek umrumda değil bu konular sadece bu işe yeni başlayanların yada takılanların çıkış anahtarı ögrenmeye çalışanlar için elinden tutan konular ekleyeceginiz birşey varsa ekleyin daha iyisini yapabiliyorsanız yapın.
saygılar - prototyqe
Ustat sana yağdıran yok kodlayana zztri ile ortak sövüyoruz
03-04-2018 15:40
#8
zztri - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
07/2015
Nereden:
Ankara
Mesajlar:
9.356
Teşekkür (Etti):
1766
Teşekkür (Aldı):
3959
Konular:
68
Alıntı:
Mrcem´isimli üyeden Alıntı Mesajı göster
Ustat sana yağdıran yok kodlayana zztri ile ortak sövüyoruz
.... Üstad... yazdığımı okusana...

Senin dediklerini yalanladım. @prototyqe tamamen geçerli bir kod yazmış.

Bilmeden eleştiri yapman.... Çok saçma olmuş bunu da söylemeden geçemeyeceğim.

Alıntı:
prototyqe´isimli üyeden Alıntı Mesajı göster
Beyler sakin olun bana yağdırmanız yada saydırmanız pek umrumda değil bu konular sadece bu işe yeni başlayanların yada takılanların çıkış anahtarı ögrenmeye çalışanlar için elinden tutan konular ekleyeceginiz birşey varsa ekleyin daha iyisini yapabiliyorsanız yapın.
saygılar - prototyqe
Kesinlikle saygılar üstad.. Kodunda bir hata bulmadım, bulanda buldum. Tamamen geçerli bir anlatım.
Kullanıcı İmzası
Gayrıresmi Trolleme Kulübü Kurucu Üyesi...

Sii Şarp: 430%
Site yapmah: 386%
Piieyçpii: 396.8%
Cava: 205%
Andıroyid: 37.9²%
Nodjiies: 196%
Sii artı artı: 342.333333334%
Yuniti: 154%
Paytın 304%
Bat dosyasıyla hedef çökertme: 96i+382√17%
Konu zztri tarafından (03-04-2018 15:43 Saat 15:43 ) değiştirilmiştir.
03-04-2018 18:56
#9
Mrcem - ait Kullanıcı Resmi (Avatar)
Forumun Yüz Karası
Üyelik tarihi:
03/2018
Yaş:
24
Mesajlar:
157
Teşekkür (Etti):
8
Teşekkür (Aldı):
10
Konular:
10
Alıntı:
zztri´isimli üyeden Alıntı Mesajı göster
.... Üstad... yazdığımı okusana...

Senin dediklerini yalanladım. @prototyqe tamamen geçerli bir kod yazmış.

Bilmeden eleştiri yapman.... Çok saçma olmuş bunu da söylemeden geçemeyeceğim.



Kesinlikle saygılar üstad.. Kodunda bir hata bulmadım, bulanda buldum. Tamamen geçerli bir anlatım.
Ustat bunu ben sinavda yapmistim dayak yedim biz oyle öğrendik kısaca sen diyorsan öyle olsun

Bizim bir hoca vardı birazda yaşlı idi labelden text alıp clear metotu kullanmadımndiye demediğini bırakmiyordu
04-04-2018 08:57
#10
zztri - ait Kullanıcı Resmi (Avatar)
Geliştirici
Üyelik tarihi:
07/2015
Nereden:
Ankara
Mesajlar:
9.356
Teşekkür (Etti):
1766
Teşekkür (Aldı):
3959
Konular:
68
Alıntı:
Mrcem´isimli üyeden Alıntı Mesajı göster
Ustat bunu ben sinavda yapmistim dayak yedim biz oyle öğrendik kısaca sen diyorsan öyle olsun

Bizim bir hoca vardı birazda yaşlı idi labelden text alıp clear metotu kullanmadımndiye demediğini bırakmiyordu
Üstad ne yazık ki şöyle bir şey vardır; bir adam bir haltı becerebilecek kadar yetenekli ise öğretmen olmaz, mühendis olur. Ancak mühendisliği beceremeyen kişiler öğretmen olur. Önceden defalarca söylediğim gibi; okulun size ciddi bir eğitim vereceğini zannediyorsanız çok ama çok yanılıyorsunuz. Üniversiteler dahil, bütün eğitmenlerin bilgileri en az 20 yaşındadır yani 20 yıl öncesinin bilgisidir. Temeli öğretsinler, izin verin, ama sonra kendiniz çalışın.
Kullanıcı İmzası
Gayrıresmi Trolleme Kulübü Kurucu Üyesi...

Sii Şarp: 430%
Site yapmah: 386%
Piieyçpii: 396.8%
Cava: 205%
Andıroyid: 37.9²%
Nodjiies: 196%
Sii artı artı: 342.333333334%
Yuniti: 154%
Paytın 304%
Bat dosyasıyla hedef çökertme: 96i+382√17%
prototyqe Teşekkür etti.

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

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