天蓬老师2017-04-17 17:35:45
여러 가지 상황이 있습니다.
사용자 정의 예외 핸들러가 설정된 다음 system.exit(0)가 핸들러에서 포착한 예외를 발생시키고 핸들러의 코드가 애플리케이션을 다시 로드합니다.
프로그램에 서비스가 있고 서비스의 onStartCommand 메소드의 반환 값이 START_STICKY로 설정되어 있습니다. 이 반환 값의 의미는 서비스가 종료되면 다시 시작한다는 것입니다. system.exit(0)은 서비스를 포함한 모든 스레드를 종료한 다음 시스템이 START_STICKY 설정에 따라 서비스를 다시 시작합니다.