1.try catch 无法捕捉到view.postDelayed 中的runnable内部的异常;
try {
mView.postDelayed(new Runnable() {
@Override
public void run() {
doSomethingException();
}
}, 500);
} catch (Exception e) {
// 可忽略的异常
Log.w(TAG, "=====");
}
修改为:
mView.postDelayed(new Runnable() {
@Override
public void run() {
try {
doSomethingException();
} catch (Exception e) {
// 可忽略的异常
Log.w(TAG, "=====");
}
}
}, 500);
2.try...catch...嵌套的执行顺序是,先里后外。
3.try...catch...嵌套的执行效率:会影响效率但是绝不是影响效率的主要方面,如果是业务需要,以业务的稳定性和程序健壮性为主,性能是其次的。