Разница между Exception и JSONException в try-catch - PullRequest
0 голосов
/ 06 мая 2020

Меня смущает использование различных терминов Exception в Try-Catch. В чем может быть «недостаток» использования простого Exception вместо JSONException?

Simple Exception

try {
  //...
}catch (Exception e){
    e.printStackTrace();
}

JSONException

try {
  //...
}catch (JSONException e){
    e.printStackTrace();
}

1 Ответ

1 голос
/ 07 мая 2020

Exception - это базовая class для всех исключений IOException, IndexOutOfBoundsException, FileNotFoundException, NullPointerException, JSONException et c

Если вы используете try/catch, как показано ниже:

 try {
          //...
       }catch (Exception e){
                e.printStackTrace();
       }

Все вышеупомянутые exceptions будут пойманы, и в случае любого из этих исключений ваш блок catch получит executed/called.

Но если вы используете try/catch, как показано ниже:

try {
          //...
       }catch (JSONException e){
                e.printStackTrace();
       }

Ваш catch блок получит called/executed, только если есть JSONException.

Если есть другой тип исключения для ex NullPointerException, IndexOutOfBoundsException et c, тогда ваш блок catch не будет вызван.

Надеюсь, это устранит ваши сомнения / вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...