android - try-catch 中 Exception 和 JSONException 的区别
问题描述
我对使用不同的Exception
术语感到困惑Try-Catch
。使用 simple而不是
可能是什么“缺点” ?Exception
JSONException
简单异常
try {
//...
}catch (Exception e){
e.printStackTrace();
}
JSON异常
try {
//...
}catch (JSONException e){
e.printStackTrace();
}
解决方案
Exception
是class
所有异常的基础IOException
, IndexOutOfBoundsException
, FileNotFoundException
,NullPointerException
等JSONException
如果您使用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
那么您的catch
块将不会被调用。
希望这可以消除您的疑问/问题。
推荐阅读
- react-native - onEndReached 有时有效,有时无效
- java - 警告:(86, 18) 'Stream.peek()' 的结果被忽略
- typo3 - TYPO3 将部分添加到 TMENU 中的链接
- python - Pythn Timer 打印在其他打印的中间。执行顺序有问题吗?
- python - 使用 scipy.findpeaks 在重叠峰的情况下找到合适的峰宽和峰高
- ios - 带有自定义对象的场景的情节提要依赖注入
- powershell - 从 certutil 转储或通过序列号获取颁发 CA (Windows Server PKI)
- python - 根据键从多个(列表)目录创建字典
- django - Django REST框架POST请求使用序列化器在嵌套字段内具有动态字段
- sql - 在sql中使用if else条件的子字符串