Для любого исключения, сгенерированного в блоке try, вы будете вызывать call_method()
.
Это потому, что вы пытаетесь поймать общий Exception
объект, а не какой-то конкретный объект, такой как NullPointerException
.
Если вы попробуете что-то подобное,
try {
// ....
method1();
}
catch(NullPointerException e) {
// ....
call_method();
}
тогда, только когда у вас есть NullPointerException
внутри блока try, ваш catch поймает его и ваш call_method()
будет выполнен.