This is something that\'s been bugging me for a while with regards to Program Flow.
I wanted to know if it\'s possible to catch an error from a Method in order to stop i
Depends on what your method really does.
If your program should continue working also when an exception arise (e.g. NumberFormatException when parsing an input or in general a checked exception) a lot of people will suggest you to not use exception for flow control, but IMHO in very well defined cases (like NumberFormatException
) the flow CAN be controlled by try catch
statements and exceptions, it's really up to you.
A way to do so is to use the method returned parameter (also @Nikola answer works in this way, the point is to use the catch
part of a try catch
as flow control):
public class MyClass {
public static void main(String[] args) {
if(method01()) method02();
};
};
public boolean method01(){
try{
//some business
}catch(MyCheckedException e){
e.printStackTrace();
return false;
}
return true;
}
NB: You should use this approach only in well defined situations! If a file CAN be absent in a directory while opening it (checked FileNotFoundException), you COULD use this approach. If the file SHOULD be there and its not, the exception MUST stop the program.