מהי מילת המפתח ה'סופית' ב-Java?

Mhy Mylt Hmpth H Swpyt B Java



בזמן תכנות ב-Java, יכולים להיות מקרים שבהם המפתח צריך להגביל מעקוף פונקציות מסוימות. לדוגמה, אבטחה או הצפנת הנתונים או כאשר יש צורך לאחסן את אותו הערך, תמיד. במקרים כאלה, ' סופי ' מילת מפתח ב-Java מאפשרת למפתח להפוך את הנתונים לסודיים.

בלוג זה ירחיב על השימוש במילת המפתח 'הסופית' בג'אווה.

מהי מילת המפתח ה'סופית' ב-Java?

ה ' סופי מילת מפתח ב-Java משמשת כדי להגביל את המשתמש מלהחליף ערך. זה עובד כך שאם משתנה או פונקציה מוקצים כסופיים, לא ניתן לדרוס את הערך שלו.







הג'אווה ' סופי ' ניתן להשתמש במילת המפתח בהקשרים רבים:



דוגמה 1: שימוש במילת מפתח 'סופית' עם משתנה

בדוגמה זו, ' סופי ' ניתן לשייך מילת מפתח למשתנה ולהחליפו גם כדי לנתח את השימוש בה:



סופי int ציון = 35 ;

ציון = ארבע חמש ;

מערכת . הַחוּצָה . println ( ציון ) ;

בקטע הקוד שלמעלה:





  • ראשית, אתחל את הערך השלם המוצהר ושייך את ' סופי ' מילת מפתח עם זה כדי להפוך את הערך שלה לבלתי ניתן לשינוי.
  • בשלב הבא, החלף את המספר השלם בערך אחר והצג אותו.
  • זה יגרום להצגת שגיאה מכיוון שלא ניתן להחליף את הערך המשויך למילת המפתח הנדונה.

תְפוּקָה



בפלט לעיל, החריג שנתקל בו מציין שהערך המשויך ל-' סופי לא ניתן להחליף מילת מפתח.

דוגמה 2: שימוש במילת מפתח 'סופית' עם פונקציה

באיור זה, ניתן להשתמש במילת המפתח הנדונה עם פונקציה מצטברת בכיתה:

הורה בכיתה {
פּוּמְבֵּי סופי בָּטֵל הַחוּצָה ( ) {
מערכת . הַחוּצָה . println ( 'זוהי פונקציית ברירת המחדל' ) ;
} }
ילדי הכיתה מרחיבים הורים {
פּוּמְבֵּי בָּטֵל הַחוּצָה ( ) {
מערכת . הַחוּצָה . println ( 'זוהי פונקציה מבוטלת' ) ;
} }
חפץ ילד = חָדָשׁ יֶלֶד ( ) ;
obj. הַחוּצָה ( ) ;

בשורות הקוד לעיל:

  • ראשית, הגדר כיתת אב בשם ' הוֹרֶה '.
  • בתוך המחלקה, הגדר פונקציה בשם ' הַחוּצָה() ' הקשורים ל' סופי ' מילת מפתח והצג את ההודעה המוצהרת.
  • לאחר מכן, צור כיתת ילד בשם ' יֶלֶד ' יורש את כיתת ההורים בעזרת ' משתרע ' מילת מפתח.
  • במחלקה זו, הכריז על הפונקציה ' הַחוּצָה() ' זהה לפונקציית המחלקה שעברה בירושה המציגה את ההודעה הנתונה.
  • בעיקרון, צור אובייקט של ' יֶלֶד ' לחלק ולהפעיל את הפונקציה הזהה המוצהרת.

תְפוּקָה

המגבלה העומדת בפניה בפלט לעיל מסמלת שלא ניתן לעקוף את הפונקציה הזהה.

דוגמה 3: שימוש במילת מפתח 'סופית' עם מחלקה

בדוגמה הספציפית הזו, ניתן להקצות מחלקה בתור ' סופי ' ולאחר מכן ניתן לאמת אותו על ידי ירושה על ידי כיתת הילד שלו:

הורה הכיתה הסופי {
פּוּמְבֵּי סופי בָּטֵל החוצה1 ( ) {
מערכת . הַחוּצָה . println ( 'זו כיתת ההורים' ) ;
} }
ילדי כיתה הורים מרחיבים {
פּוּמְבֵּי בָּטֵל החוצה2 ( ) {
מערכת . הַחוּצָה . println ( 'זה כיתת ילדים' ) ;
} }
חפץ ילד = חָדָשׁ יֶלֶד ( ) ;
obj. החוצה1 ( ) ;

החל את השלבים המפורטים להלן כפי שמופיעים בשורות הקוד לעיל:

  • ראשית, הגדר מחלקה בשם ' הוֹרֶה ' הקשורים ל' סופי ' מילת מפתח להימנע מהעברת בירושה.
  • בתוך המחלקה, הגדר את הפונקציה שסופקה והצג את ההודעה הנתונה.
  • לאחר מכן, אתחל את כיתת הילד ' יֶלֶד ' יורש את כיתת האב באמצעות ' משתרע ' מילת מפתח.
  • במחלקה זו, הכריז באופן דומה על פונקציה בשם ' out2() ' והדפיס את ההודעה המוצהרת בהגדרת (הפונקציה) שלה.
  • לבסוף, ב-main, צור אובייקט של כיתת הילד והפעל את פונקציית מחלקת האב ' out1() '.
  • פעולה זו תירשם שגיאה מכיוון שלא ניתן להעביר את המחלקה שהוקצתה כסופית.

תְפוּקָה

בפלט זה, ניתן לראות כי נזרק חריג מכיוון שלא ניתן להפעיל את פונקציית מחלקת האב על ידי כיתת הילד.

סיכום

ה ' סופי מילת מפתח ב-Java משמשת כדי למנוע מהמשתמש להחליף ערך. מילת מפתח זו יכולה להיות קשורה למשתנה, פונקציה או מחלקה וכו'. לאחר שינוי או הורשת (במקרה של מחלקה) הערך שלה, היא רומנת שגיאה. מאמר זה דן בשימוש במילת המפתח הסופית ב-Java.