Cześć
Mam problem z wyjątkami:
public void metodaA() {
try {
metdoaA1();
} catch (Exception e) {
tutaj przechwytywanie
}
}
private void metdoaA1() throws IOException {
metodaAA1();
logika w której moze powstać IOException
}
private void metodaAA1() throws IOException {
również logika w której moze powstać IOException
}
Tutaj wszystko działa. Natomiast jeżeli chce dodać w metodzie metdoaA1 osobny try - catch ale tak by i tak wszystko przeszło przez przechwytywanie w metodzie metodaA to już nie działa
private void metdoaA1() throws Exception{
try
metodaAA1();
catch(IOException e)
{
}
logika w której moze powstać IOException
}
IOException z metody metodaAA1 leci w catch metody metodaA, ale IOException z metdoaA1 zatrzymuje się na catchu w tej metodzie i nie przechodzi do catcha metodyA. Zawsze mi się wydawało ze hierarchia wątków podaje wyżej.
Jak zrobić by bład w metodzie metdoaA1 przeszadł przez dwa catche ?
Pewnie dodanie throw new Exception w catchu rozwiąże problem ale jest sposób by nie tworzyć nowego wyjatku tylko podać go wyzej w hierarchi?
pozdro