SORU
24 EYLÜL 2008, ÇARŞAMBA


Neden try {...} finally { ... }; try {...} catch{} kötü?

Özellikle eğer yakalamak bir faydası olsaydı zaten insanlar bağımsız yakalamak kullanmak için yanlış bir hareket olduğunu söylemek istiyorum

StreamReader reader=new  StreamReader("myfile.txt");
try
{
  int i = 5 / 0;
}
catch   // No args, so it will catch any exception
{}
reader.Close();

Ancak, bu iyi formu olarak kabul edilir

StreamReader reader=new  StreamReader("myfile.txt");
try
{
  int i = 5 / 0;
}
finally   // Will execute despite any exception
{
  reader.Close();
}

Bildiğim kadarıyla söyleyebilirim, tek farkı koyarak temizleme kodu bir finally bloğu ve yerleştirme, temizleme sonra kod bir try..catch bloğu ise size dönüş tablolarda denemen blok (bu durumda, temizleme kodu son olarak çalışacaktır, ama sonra kod, try..catch).

Aksi halde, sonunda bu kadar özel yapan ne?

CEVAP
24 EYLÜL 2008, ÇARŞAMBA


Büyük fark try...catch dışında, bir hata oluştuğu gerçeğini gizleme yutmak olacaktır. try..finally temizleme kodunuzu çalıştırın ve sonra özel durum gideceğini, ne yapacağını bilmediği bir şey tarafından ele olmaya devam edecektir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BumbleDroid

    BumbleDroid

    18 EKİM 2010
  • Jabari Johnson

    Jabari Johns

    18 Ocak 2008
  • Warner Bros. UK

    Warner Bros.

    6 HAZİRAN 2008