java 中如何中斷一個正在運行的方法

目前我遇到兩種,遇到時候在進行補充

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;

上述這一串代碼也就不執行了。

還有就是在方法上進行拋出異常,如果一旦出現異常,就會進行上拋,一直拋到虛擬機。因此在這個過程中,和上面情況一樣,一旦遇到異常,就會停止運行該方法。

這輩子堅持與不堅持都不可怕,怕的是獨自走在堅持的道路上!!

歡迎加入技術羣聊!

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章