
final, שנועדה למנוע שינוי של משתנה אחרי שנקבע לו ערך.num מקבל 1, 2 ו-3, ואחר כך 4, 5 ו-6, והתוכנית רצה.final להגדרת המשתנה ומכניסים לו ערך פעם אחת. ההשמה הראשונה מותרת.final גורמת לשגיאת קומפילציה, והתוכנית לא רצה.final עם כל טיפוס נתונים, כולל מחרוזת. בדוגמה משתנה first name עם הערך מוישה אי אפשר לשנות לשם אחר.final מתנהג כמעין קבוע, אך הוא עדיין משתנה שמקבל ערך בזמן ההרצה.הטקסט המלא של הדקות הראשונות בהרצאה «Final Keyword» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
קיימת בג'אווה מילה שמורה שקשורה לעולם הקבועים והיא נקראת Final. בואו נראה מה זה עושה. אם אנחנו פותחים איזשהו משתנה, בואו ניקח משתנה num, אנחנו יכולים להכניס לתוכו איזשהו ערך, בואו נכניס 1, 2, 3 ולאחר מכן אנחנו יכולים לשנות אותו.
בואו נניח 4, 5, 6. בואו נציג פה את num ונציג אותו שוב פעם. כאן נריץ והכל עובד כמו שצריך. קי ומשתנה.
אם אנחנו רושמים פיינל אז בעצם אנחנו רואים שפתאום אנחנו חוטפים שגיאה על הפעם השנייה שבה אנחנו מנסים לשנות את ערכו של המשתנה ואנחנו כמובן לא יכולים להריץ את התוכנית. בואו את זה נשים בהערה, נריץ ונראה שבעצם פיינל אומר לנו שהמשתנה הזה זה יכול להכיל רק ערך פעם אחת ואי אפשר יותר לשנות את הערך הזה.
אז פעם ראשונה שאנחנו עושים ערך זה מותר ואנחנו לא רשאים יותר לשנות את ערכו של המשתנה. זה כמובן יהיה error. אנחנו יכולים לעשות את זה מכל טיפוס נתונים.
בואו ניקח לדוגמה סטרינג ויש לנו פה לדוגמה first name ומוישה וננסה לשנות את זה לשם אחר, דנה, ונראה שהמערכת אומרת לנו לא. פעם אחת הגדרתם את ערכו של המשתנה שמוגדר בפיינל, וזהו, פיינל זה סופי, ערכו סופי ולא ניתן לשינוי יותר.
שימו לב שיכולנו לעשות את זה גם בשורה נפרדת וגם באותה השורה, אבל מעכשיו אי אפשר לשנות את ערכו יותר, זאתי כמובן שגיאה. אז אנחנו יכולים להשתמש עם זה כאשר באמת