İstisna İşleyicisi Java'da Nedir?

Java'da istisnalar, bir programın kontrol akışını yöneten birçok yapıdan biridir. Spesifik olarak, bunlar bir programın normal uygulamasının istenmeyen yan etkileridir. İstisnalarla karşılaşabilecek kod yazarken, programcı, bir istisna ile karşılaşırsa, "istisna işleme" olarak bilinen bir işlemle karşılaşırsa, program için yeni talimatlar tanımlamalıdır. İstisna işleyicileri üç ayrı bloktan oluşur: deneyin, yakalayın ve sonunda.

Java İstisnaları

Bir program beklenmedik bir şekilde davranan bir yöntem çağırdığında, bir "istisna" ile karşılaştığı söylenir. Örneğin, program bir sayıyı sıfıra bölmeye kalkarsa veya olmayan bir dosyayı yüklerse, program beklendiği gibi davranmayabilir ve bu hatayı bildirmek için bir istisna atar. Yöntem gövdesinde bir istisna atmak için bir yöntem tanımlanırsa, bunu yalnızca bir istisna işleyici içinde çağırabilir - veya onu çağıran yöntemin de aynı istisnayı attığını bildirerek hatayı ağaçta geçirebilirsiniz.

Blokları dene

Başarılı bir istisna işleyicisinde, istisnayı atan yöntemin, "try {exceptionThrowingMethod ();}}" try {exceptionThrowingMethod ();} "'de olduğu gibi" try "bloğunda bulunması gerekir. Programcı, excertions yöntemlerini yakalayan catch bloklarını tanımlar. try bloğunda bulunan atmak.

Yakalamak blokları

Tek bir try bloğu, bir istisnaya rastlandığında farklı davranışları tanımlamak için birden fazla "catch" bloğuna sahip olabilir. Bir program çoklu yakalama bloklarında tanımlanan bir istisna ile karşılaşırsa, ilk önce en üst yakalama bloğunu çalıştıracaktır. Tüm istisnalar istisna sınıfından kaynaklandığı için, bu, ilk catch bloğunuz "catch (Exception e) {}" okursa, bir istisna ile karşılaştığında ve hiçbir zaman diğerlerinden biri olmadığında bir programın her zaman bu bloğu çalıştıracağı anlamına gelir. Programınız üzerinde hassas kontrol sahibi olmak istiyorsanız, yakalama bloklarınızı en belirgininden en az belirginine doğru düzenleyin.

Sonunda Bloklar

Bir "son" blok, bir istisna işleyicisinin isteğe bağlı bir bileşenidir. Bir istisna ile karşılaşılsa bile daima çalışması gereken davranışı tanımlamak için kullanın. Bazı durumlarda gereklidir, çünkü try bloğunun son bölümünün çalışacağını garanti edemezsiniz. Bir istisna atılır ve yakalanırsa, bu blok o noktada kesilecektir. Örneğin, "InputStream.close ()" komutunu bir sonuç bloğuna koymak, kodun başında atılan bir istisnadan bağımsız olarak akışlarınızın güvenle kapatılmasını sağlar.

Popüler Mesajlar