מדריך למילת מפתח זו של Java

1. הקדמה

במדריך זה, אנו נסתכל על זֶה מילת מפתח ג'אווה.

בג'אווה, זֶה מילת המפתח היא הפניה לאובייקט הנוכחי ששמתו נקראת.

בואו לחקור כיצד ומתי נוכל להשתמש במילת המפתח.

2. הצללה בשדה מבוטלת

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

מחלקה ציבורית KeywordTest {שם מחרוזת פרטי; גיל פרטי פרטי; KeywordTest ציבורי (שם מחרוזת, גיל int) {this.name = name; this.age = גיל; }}

כפי שאנו רואים כאן, אנו משתמשים זֶה עם ה שֵׁם ו גיל שדות מופע - כדי להבדיל ביניהם לבין פרמטרים.

שימוש אחר הוא שימוש זֶה עם הפרמטר שמסתיר או מוצל בהיקף המקומי. דוגמה לשימוש ניתן למצוא במאמר Variable and Hiding Hiding.

3. בניית הפניות מאותה המעמד

מבנאי נוכל להשתמש זֶה() להתקשר לבנאי אחר מאותו כיתה. הנה, אנו משתמשים זֶה() לשרשור הבנאי להפחתת השימוש בקוד.

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

KeywordTest ציבורי (שם מחרוזת, גיל int) {this (); // שאר הקוד}

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

KeywordTest ציבורי () {this ("John", 27); }

ציין זאת זֶה() אמורה להיות המשפט הראשון בבנאי, אחרת תתרחש שגיאת הקומפילציה.

4. עוברים זֶה כפרמטר

כאן יש לנו printInstance () שיטה, שם מילת מפתח זו טיעון מוגדר:

KeywordTest ציבורי () {printInstance (this); } הדפסה בטלנית ציבוריתInstance (KeywordTest thisKeyword) {System.out.println (thisKeyword); }

בתוך הקונסטרוקטור אנו קוראים printInstance () שיטה. עם זֶה, אנו מעבירים התייחסות למופע הנוכחי.

5. חוזרים זֶה

אנחנו יכולים גם להשתמש זֶה מילת מפתח להחזרת המופע הנוכחי בכיתה מהשיטה.

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

6. ה זֶה מילת מפתח בתוך המעמד הפנימי

אנו גם משתמשים זֶה כדי לגשת למופע המעמד החיצוני מתוך המעמד הפנימי:

מחלקה ציבורית KeywordTest {שם מחרוזת פרטי; class ThisInnerClass {בוליאני isInnerClass = true; ציבורי ThisInnerClass () {KeywordTest thisKeyword = KeywordTest.this; מחרוזת outerString = KeywordTest.this.name; }}}

כאן, בתוך הבנאי, אנו יכולים לקבל התייחסות ל- KeywordTest למשל עם KeywordTest.this שִׂיחָה. אנחנו יכולים להעמיק עוד יותר ולגשת למשתני המופע כמו KeywordTest.this.name שדה.

7. מסקנה

במאמר זה בחנו את זֶה מילת מפתח בג'אווה.

כרגיל, הקוד השלם זמין ב- Github.


$config[zx-auto] not found$config[zx-overlay] not found