System.exit(...) を呼び出すことは、Java 仮想マシン全体をシャットダウンさせてしまいます。 それが適切な場合にだけ使用するべきです。 System.exit(...) の呼び出しはコードが他のコードによって呼び出されることを困難か不可能にします。 その代わりに RuntimeException をスローすることを検討してください。
System.exit(...)