目前我遇到兩種,遇到時候在進行補充
1.第一種
在方法中進行return, return之後,方法不在執行。
截圖展示
public static void remove(String srcPath) {
if(null==srcPath || "".equals(srcPath)){
return; //防止出現nullPointerException
}else{
File file = new File(srcPath);
if (file.exists()) {
file.delete();
}
}
}
就比如說這個remove方法,如果if裏面出現異常時,我就是進行了return,方法不在繼續向下執行。
2.第二種
在方法中進行try catch, 在catch裏面將異常拋出
或者直接在方法上進行throws ××異常
,一樣的道理。
這個時候,方法執行時遇到異常時,方法不再繼續執行。
@Around("pointCut()")
public Object Around(ProceedingJoinPoint point) throws Throwable {
long beginTime = System.currentTimeMillis();
Object result = null;
try {
// 執行當前方法 拿到結果
result = point.proceed();
} catch (Throwable e) {
// e.printStackTrace();
throw e;
}
// 執行時長(毫秒)
long time = System.currentTimeMillis() - beginTime;
// 保存日誌
saveLog(point, time,null);
return result;
}
在上述代碼中,在catch裏面,我將e
進行throw
(拋出),如果運行該方法時,一旦出現異常,那麼該方法就不會繼續執行。也就是說
// 執行時長(毫秒)
long time = System.currentTimeMillis() - beginTime;
// 保存日誌
saveLog(point, time,null);
return result;
上述這一串代碼也就不執行了。
還有就是在方法上進行拋出異常,如果一旦出現異常,就會進行上拋,一直拋到虛擬機。因此在這個過程中,和上面情況一樣,一旦遇到異常,就會停止運行該方法。
這輩子堅持與不堅持都不可怕,怕的是獨自走在堅持的道路上!!
!
歡迎加入技術羣聊! | |
---|---|