
הטקסט המלא של הדקות הראשונות בהרצאה «Invoking a Function from within a Function» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
הפונקציה יכולה גם לקרוא ולהפעיל פונקציה אחרת. בואו נראה איך זה מתבצע. בואו נניח שיש לנו כאן פונקציה ראשונה, static void, נקרא לה f1, וכל מה שהפונקציה הזאת תעשה זה תדפיס אם f1 על המסך.
בואו נכתוב את f2 והיא תדפיס אם f2 על המסך, ובואו ניקח גם את f3 שתציג אם f3 על המסך. בוא נניח ש-F1 גם קוראת ל-F2 ו-F2 גם קוראת ל-F3. אם אנחנו נפעיל את F1, מה אנחנו בעצם הולכים לראות על המסך?
אז אנחנו הולכים לקבל קפיצה ל-F1. F1 הולכת לקרוא ל-F2, כאן תתבצע קפיצה ל-F2, F2 הולכת לקרוא ל-F3 ואנחנו הולכים בעצם לראות את שלושת ההדפסות האלה על המסך.
בואו נריץ והנה אנחנו רואים F1, f2, f3. כל פעם שמתבצעת הדפסה, מתבצעת קפיצה לפונקציה.
עוד יותר דיוק, כל פעם שמתבצעת קריאה לפונקציה, המערכת קופצת לפונקציה. אם אנחנו נדפיס כאן end of f1, נדפיס פה end of f2 ונדפיס פה end of f3, מה בעצם אנחנו נראה?
אז בגלל שאנחנו קראנו ל-f1, אז אנחנו נראה קודם כל את זה, ואנחנו לא נראה end of f1 מיד כי היא מתבצעת קפיצה ל-f2. כאן אנחנו נראה את i מ-f2 ומתבצעת קפיצה ל-f3.
כאן אנחנו נראה i m-f3 ואז end of f3 והמערכת חוזרת לכאן כי זאת הייתה קפיצה ל-f3. ואז אנחנו נמשיך את זה ונראה end of f2 ואז בעצם סיימנו את f2 אז רק הקריאה הזאת הסתיימה ואנחנו ממשיכים ומדפיסים end of בואו נרווח, נריץ, והנה f1, f2, f3 וה-end היא f3, f2, f1. אז אנחנו רואים שפונקציה יכולה
לקרוא לפונקציה אחרת, כמובן היא יכולה לקרוא לה כמה פעמים, אנחנו לא חייבים לקרוא פעם אחת, ובואו נעשה איזה תרגיל קצת יותר משמעותי מרק להציג f1, f2, f3 על המסך.
בואו נניח שיש לנו כאן פונקציה static void, שמדפיסה לנו שורה אחת על המסך. אוקיי, מה זה אומר להדפיס