כיצד ליישם שיטות מסתור בג'אווה



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

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

מהי הסתרת שיטה?

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





לוגו Java

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



שיטת הסתרת קוד Java

חבילה מחלקה com.test הורה {public static void foo () {System.out.println ('שיטת Inside foo בכיתת האב')} סרגל חלל ריק () {System.out.println ('שיטת סרגל פנים בכיתת האב') )}} מחלקה ילד מרחיב הורה {// מסתיר חלל סטטי ציבורי foo () {System.out.println ('שיטת foo בתוך כיתת ילדים')} // סרגל ריק ריק ציבורי () {System.out.println (' שיטת סרגל פנים בכיתת ילדים ')}} מחלקה ציבורית קוד {ציבורי ריק ריק סטטי (מחרוזת [] טענות) {הורה p = הורה חדש () הורה c = ילד חדש () System.out.println (' **** ************ הסתרת שיטה ****************** ') p.foo () // שיטה זו תקרא בכיתת האב ג .foo () // שיטה זו תקרא בכיתת האב System.out.println ('**************** עוקף שיטה ************ ******* ') p.bar () // שיטה זו תקרא בכיתת האב c.bar () // שיטה זו תקרא בכיתת ילדים}}

תְפוּקָה:

באמור לעיללדוגמא, למחלקה המשנה ילד יש שיטה סטטית foo () עם שם וחתימה זהים לזה של שיטה סטטית בהורה super-class. כשאנחנו קוראים ל- p.foo () ו- c.foo () זה מכנה שיטת foo () בכיתת האב



שלא כמו בשיטת עקיפת השיטה שבה p.bar () קורא לשיטה בכיתת האב ו- c.bar () מכנה את השיטה בכיתת ילדים.

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

סיכום

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

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

c ++ כיצד למיין מערך

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

יש לך שאלה עבורנו? אנא הזכיר זאת בקטע ההערות בבלוג 'שיטה המסתתרת בג'אווה' ונחזור אליך בהקדם האפשרי.