قم أولاً بتنفيذ المحاولة، إذا كان هناك استثناء، فقم بتنفيذ الصيد، ثم قم بالتنفيذ أخيرًا على أي حال.
ستقوم الوظيفة بالتأكيد بتنفيذ الجزء في النهاية.
فيما يتعلق بعملية تنفيذ الوظيفة، عندما يكون هناك إرجاع، ستقوم الوظيفة بتخزين البيانات في موقع معين، ثم تخبر الوظيفة الرئيسية، لن أقوم بتنفيذها بعد الآن، يمكنك تنفيذها بعد ذلك، لذلك ستكون الوظيفة أطلقت.
ولكن عندما تظهر أخيرًا في إحدى الوظائف، سيتم دائمًا تنفيذها، لذلك، حتى إذا تم تنفيذ الإرجاع في المحاولة أو الالتقاط، فلن تخرج الوظيفة في هذا الوقت ولن تخبر الوظيفة الرئيسية بالتنفيذ، بل ستنتظر ليتم تنفيذها أخيرًا، ثم ارجع وأخبر الوظيفة الرئيسية بتنفيذها. في هذا الوقت، إذا ظهرت العودة أخيرًا، فستحل قيمة الإرجاع محل القيمة في المحاولة أو الالتقاط، ثم سيتم إخبار الوظيفة الرئيسية: لن أنفذه، اذهب ونفذه. وبالتالي فإن الوظيفة الرئيسية سوف تحصل على قيمة الإرجاع في النهاية. وهذا يعني أن القيمة المرجعة للوظيفة الفرعية هي دائمًا القيمة المرجعة في النهاية (طالما أن هناك قيمة في الوظيفة المطلوبة)