nEncadeando
Exceções (versão 1.4 em diante)
ntry {
n InputStream fin = new
FileInputStream(args[0]);
n .....
n while((b=in.read()) != -1) {
System.out.print((char)b); }
n } catch (IOException e) {
n throw
(HighLevelException) new
n
HighLevelException(e.getMessage()).initCause(e);
n }
n Um objeto Throwable
contem um snapshot da stack trace de sua thread quando de sua criação, alem disso pode conter um
outro objeto Throwable que foi responsável pela sua criação. Isto implementa o mecanismo de chained
exception.
n
nO metodo initCause salva internamente a exceção indicada para que a stack trace possa ser impressa em uma
instancia da exceção de nível superior, no exemplo acima HighLevelException