Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!news.chainon-marquant.org!nntpfeed.proxad.net!proxad.net!feeder2-2.proxad.net!nx01.iad01.newshosting.com!newshosting.com!69.16.185.21.MISMATCH!npeer03.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail From: Lew Newsgroups: comp.lang.java.programmer Subject: Re: Avoid creating a stacktrace prior to JDK 1.7 Date: Sat, 1 Oct 2011 09:10:16 -0700 (PDT) Organization: http://groups.google.com Lines: 31 Message-ID: <4424828.699.1317485416810.JavaMail.geo-discussion-forums@prng5> References: Reply-To: comp.lang.java.programmer@googlegroups.com NNTP-Posting-Host: 24.6.43.78 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: posting.google.com 1317485417 17693 127.0.0.1 (1 Oct 2011 16:10:17 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sat, 1 Oct 2011 16:10:17 +0000 (UTC) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=24.6.43.78; posting-account=CP-lKQoAAAAGtB5diOuGlDQk0jIwmH0T User-Agent: G2/1.0 X-Google-Web-Client: true Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:8445 Jan Burse wrote: > Stanimir Stamenkov schrieb: >> You may perform a check which avoids the exceptional situation like: >> >> Class class; >> try { >> class = (Class.getResource(str + ".class") != null) >> ? Class.forName(str) >> : null; >> } catch (ClassNotFoundException x) { >> class = null; >> } >> >> The Class.forName(String) could still fail if the access to the resource >> content is restricted, I imagine. >> > Yes, this would change the role of exceptions, No, it would /restore/ the role of exceptions. The role of exceptions is to > not use it for business logic, only for > exceptional flow. in the first place. /Effective Java/, Joshua Bloch, "Item 57: Use exceptions only for exceptional conditions". -- Lew