У меня странная проблема с моей программой.Я написал следующий код:
class Divide{
int a, b;
int divide(int a, int b) {
try {
if (b > 1)
throw new ArithmeticException("Generating exception");}
catch (ArithmeticException e) {
System.out.println("Caught exception 1st time" + e);
throw e;
}
int c = a / b;
return c;
}
}
И после этого я хотел сделать обработку исключений и получить переменную из нее следующим образом:
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Divide d = new Divide();
int result = 0;
try
{
result = d.divide(12, 2);
} catch (ArithmeticException e)
{
System.out.println("2 raz");
}
System.out.println(result); ///getting 0 insted of 6!
}
}
И я все еще получаю переменную перед попыткойблокКак я могу сделать этот тип обработки исключений и получить переменную со значением после использования метода divade.