Если у меня есть программа, которая вызывает метод, который должен завершаться, если выдается конкретное исключение, должен ли я спроектировать ее таким образом, чтобы исключение передавалось обратно в main
, чтобы оно могло безопасно вернуться, или я должен обрабатывать исключение в функции и вызывать System.exit(-1)
?
Вот пример того, что я имею в виду, обрабатывая его в функции:
public class MyClass{
public static void main (String[] args){
myFunction(args);
}
public static void myFunction(String[] args){
try{
if(args.length == 0)
throw Exception("Invalid Input");
}catch(Exception e){
System.out.println(e);
System.exit(-1);
}
}
}
Вот пример того, что я имею в виду, говоря об этом:
public class MyClass{
public static void main (String[] args){
try{
myFunction(args);
}catch(Exception e){
System.out.println(e);
}
}
public static void myFunction(String[] args) throws Exception{
if(args.length == 0)
throw Exception("Invalid Input");
}
}
Какой способ следует использовать в этой ситуации?
main()
. Зачем вам перехватывать исключение, если оно фатальное? Кроме того,catch(Exception e){ System.exit(-1); }
обычно никогда не бывает хорошей идеей. - person Mick Mnemonic   schedule 01.08.2018