在Java中,調用代碼可以分為兩種方式:同步調用和異步調用。
同步調用是指在調用代碼時,程序會等待該代碼執行完畢后才會繼續往下執行,直到該代碼返回結果或拋出異常。
// 同步調用示例 public String syncCall() { String result = null; try { result = someMethod(); // someMethod是一個耗時的方法 } catch (Exception e) { // 錯誤處理 } return result; }
在上述代碼中,程序在調用someMethod方法時會等待其執行完畢并返回結果后才會繼續往下執行。
而異步調用則是指在調用代碼時,程序會立刻返回并繼續往下執行,不管該代碼返回結果或拋出異常。異步調用通常使用回調函數來處理代碼執行完畢后的結果。
// 異步調用示例 public void asyncCall(Callback callback) { new Thread(() ->{ try { String result = someMethod(); // someMethod是一個耗時的方法 callback.onSuccess(result); // 執行成功后調用onSuccess方法 } catch (Exception e) { callback.onError(e); // 執行出錯時調用onError方法 } }).start(); }
在上述代碼中,程序在調用asyncCall方法時會立刻返回并繼續往下執行,而異步線程會在另外一個線程中執行someMethod方法,并在執行完畢后調用callback的onSuccess或onError方法。
根據實際場景需求,我們可以選擇使用同步調用或異步調用來實現程序的功能。