İlk şans istisnası tam olarak nedir? Bir .NET programında nasıl ve nereden kaynaklanır? Ve neden o tuhaf adla anılıyor (hangi 'tesadüf'ten bahsediyoruz)?
İlk şans istisnası tam olarak nedir? Bir .NET programında nasıl ve nereden kaynaklanır? Ve neden o tuhaf adla anılıyor (hangi 'tesadüf'ten bahsediyoruz)?
Yanıtlar:
Bu bir hata ayıklama kavramı. Temelde istisnalar hata ayıklayıcı atılıyor ilk o ele almaması halinde bundan ayıklayıcıya bir atılan gerçek programa ve sonra ikinci size vererek zaman şans öncesi ve uygulamanın kendisi sonra IDE'nizde onunla bir şeyler yapmak. Bu bir Microsoft Visual Studio buluşu gibi görünüyor.
catch
, kontrol oraya gider. Hiçbir yoksa catch
blok, sen "ikinci şans" fırsatyaratmaya, bu kez mesajdır 'foo' YourApp.exe oluştu tür bir işlenmeyen özel durum . Buradan devam etmeye veya daha ileri gitmeye çalışmak başarılı olmayacaktır.
Bir istisna atıldığında ilk şans istisna bildirimleri ortaya çıkar. İkinci şans bildirimleri, yakalanmadığı zamandır. (Şans - hata ayıklayıcıdaki koda girme fırsatı gibi).
Hata ayıklayıcıyı kullanmaya başladım ve bununla karşılaştım. Araştırmamda MSDN blog gönderisini buldum İlk Şans İstisnası Nedir?bu benim için durumu açıklığa kavuşturdu.
Blog gönderisinden benim için en büyük çıkarımlar, hata ayıklayıcıya yapılan bildirime atıfta bulunması ve kodumun mutlaka ele alması gereken bir şey olmaması ve en önemlisi, "İlk şans istisna mesajları çoğu zaman içinde bir sorun olduğu anlamına gelmez. kod. "
Bir uygulamada hata ayıklandığında, bir istisna ile karşılaşıldığında hata ayıklayıcı bilgilendirilir. Bu noktada, uygulama askıya alınır ve hata ayıklayıcı istisnayı nasıl ele alacağına karar verir. Bu mekanizmadan ilk geçişe "ilk şans" istisnası denir.
Hata ayıklayıcının yapılandırmasına bağlı olarak, uygulamayı sürdürür ve istisnayı iletir veya uygulamayı askıya alır ve hata ayıklama moduna girer. Uygulama istisnayı işliyorsa, normal şekilde çalışmaya devam eder.
İlk şans istisna mesajları çoğu zaman kodda bir sorun olduğu anlamına gelmez. İstisnaları incelikle işleyen uygulamalar / bileşenler için, ilk şans istisna mesajları, geliştiricinin istisnai bir durumla karşılaşıldığını ve ele alındığını bilmesini sağlar.
Bir geliştiricinin bakış açısından, daha çok ikinci bir şans istisnası ile ilgilidir, çünkü kodla ele alınmadığı anlamına gelir ; bu nedenle uygulama duracaktır.
İlk şans bunların birçoğu olabilir, ancak yine geliştirme açısından daha fazla endişe duyanlar ikinci şanstır, çünkü bu bir uygulamanın çökmesine neden olur.
finally
. Sistem kimin bir istisnayı yakalayacağına karar verdiğinde (ve birisinin gerçekten bunu yapacağını belirlediğinde), sistem yığını çözmeye başlayacaktır. Birfinally
bloktan bir istisna atılırsa ...