Java 7 – Birden Fazla Exception Aynı Alanda

Daha önceki Java versiyonlarında, bir try blogundan veya bir metottan birden fazla farklı exception atıldığında, her bir exceptionı ayrı catch bloğunda yakalamamız gerekiyordu.

public void throwTestMethod() 
        throws IllegalArgumentException, FileNotFoundException, NullPointerException
{
	// ...
}

public void throwTest() {
	try {
		throwTestMethod();
	} catch (IllegalArgumentException e) {
		// Do special process for IllegalArgumentException 
	} catch (FileNotFoundException e) {
		// Do special process for FileNotFoundException 
	} catch (NullPointerException e) {
		// Do special process for NullPointerException 
	}
}

Aynı catch bloğunu kullanmanın yolu vardı;

public void throwTest() {
	try {
		throwTestMethod();
	} catch (Exception e) {
		// Do special process for all Exceptions
	} 
}

Ancak, burada gördüğünüz üzere tüm exceptionları aynı blokta kullanmamız gerekiyordu. Örneğin, 3 exception atılan bir metod için sadece 2 exceptiona özel bir blok oluşturamıyorduk (aynı interface’i kullanmak gibi dolambaçlı yöntemler var tabii ki).

Java 7 ile birlikte exceptionları catch bloklarında gruplayabilme özelliği gelmiş oldu. Artık,

public void throwTest() {
	try {
		throwTestMethod();
	} catch (IllegalArgumentException e) {
		// Do special process for IllegalArgumentException 
	} catch (FileNotFoundException | NullPointerException e) {
		// Do special process for FileNotFoundException and NullPointerException 
	}
}

şeklinde bir kullanım gerçekleştirebiliyoruz. Kod yeniden kullanılabilirliği için gayet faydalı bir geliştirme olmuş.

8 Comments

    Java 7 – Birden Fazla Exception Aynı Alanda | Boğaç Aslanyürek

    […] bloğunda yakalamamız gerekiyordu. public void throwTestMethod() throws Ill… Devamı için : Java 7 – Birden Fazla Exception Aynı Alanda This entry was posted in Professional and tagged catch, Exception, Java 7, Java 7 Exception, […]

    Java 7 – Birden Fazla Exception Aynı Alanda « Musa Usta'nın Yeri

    […] bloğunda yakalamamız gerekiyordu. public void throwTestMethod() throws Ill… Devamı için : Java 7 – Birden Fazla Exception Aynı Alanda Share this:TwitterFacebookLike this:BeğenBe the first to like this.   Leave a […]

    Java 7 – Birden Fazla Exception Aynı Alanda | Gökhan Tunçkale | Blog

    […] bloğunda yakalamamız gerekiyordu. public void throwTestMethod() throws Ill… Devamı için : Java 7 – Birden Fazla Exception Aynı Alanda ShareFacebookTwitterStumbleUponMoreTumblrRedditLinkedInDiggEmailPrintLike this:BeğenBe the first […]

    Java 7 – Birden Fazla Exception Aynı Alanda « Anil's Blog

    […] bloğunda yakalamamız gerekiyordu. public void throwTestMethod() throws Ill… Devamı için : Java 7 – Birden Fazla Exception Aynı Alanda Like this:BeğenBe the first to like […]

    Java 7 – Birden Fazla Exception Aynı Alanda | Kara Kule

    […] bloğunda yakalamamız gerekiyordu. public void throwTestMethod() throws Ill… Devamı için : Java 7 – Birden Fazla Exception Aynı Alanda Share this:TwitterFacebookLike this:BeğenBe the first to like this. By ahmet orsorlu • […]

    Java 7 – Birden Fazla Exception Aynı Alanda | yusufozkay

    […] bloğunda yakalamamız gerekiyordu. public void throwTestMethod() throws Ill… Devamı için : Java 7 – Birden Fazla Exception Aynı Alanda Share this:TwitterFacebookLike this:BeğenBe the first to like this. This entry was posted in […]

    Emre Macit

    Bu özellikle, kod okunulabilirliğini artırır. PHP de de benzer bir şey yaparlar ileride inşallah.

      Ahmet Orsorlu

      Evet kod okunabilirliğini inanılmaz arttıracak bir yenilik. PHP’ye de önünde sonunda geleceğini düşünüyorum.

Bir Cevap Yazın