מחלקה פנימית של Java או מחלקה מקוננת היא מחלקה המוצהרת בתוך המחלקה או הממשק.
jvm ב-java
אנו משתמשים במחלקות פנימיות כדי לקבץ באופן הגיוני כיתות וממשקים במקום אחד כדי להיות יותר קריאים וניתנים לתחזוקה.
בנוסף, הוא יכול לגשת לכל חברי המחלקה החיצונית, כולל חברי נתונים פרטיים ושיטות.
תחביר של כיתה פנימית
class Java_Outer_class{ //code class Java_Inner_class{ //code } }
יתרון של מחלקות פנימיות של Java
ישנם שלושה יתרונות של מחלקות פנימיות בג'אווה. הם כדלקמן:
- מחלקות מקוננות מייצגות סוג מסוים של קשר כלומר הוא יכול לגשת לכל האיברים (חברי נתונים ושיטות) של המחלקה החיצונית, כולל פרטי.
- משתמשים בכיתות מקוננות לפתח קוד קריא וניתן יותר לתחזוקה מכיוון שהוא מקבץ באופן הגיוני כיתות וממשקים במקום אחד בלבד.
צורך בכיתה פנימית של Java
לפעמים משתמשים צריכים לתכנת מחלקה בצורה כזו שאף מחלקה אחרת לא תוכל לגשת אליה. לכן, עדיף שתכלול אותו בשיעורים אחרים.
אם כל אובייקטי המחלקה הם חלק מהאובייקט החיצוני אז קל יותר לקנן את המחלקה בתוך המחלקה החיצונית. כך כל המחלקה החיצונית יכולה לגשת לכל האובייקטים של המחלקה הפנימית.
האם אתה יודע- מהו הקוד הפנימי שנוצר על ידי המהדר עבור המחלקה הפנימית של חבר?
- מהן שתי הדרכים ליצור מעמד פנימי אנונימי?
- האם נוכל לגשת למשתנה המקומי הלא סופי בתוך המחלקה הפנימית המקומית?
- כיצד לגשת למחלקה המקוננת הסטטית?
- האם נוכל להגדיר ממשק בתוך הכיתה?
- האם נוכל להגדיר מחלקה בתוך הממשק?
ההבדל בין מחלקה מקוננת למחלקה פנימית ב-Java
מחלקה פנימית היא חלק ממחלקה מקוננת. מחלקות מקוננות לא סטטיות ידועות בתור מחלקות פנימיות.
סוגי כיתות מקוננות
ישנם שני סוגים של מחלקות מקוננות לא סטטיות ומחלקות מקוננות סטטיות. המחלקות המקוננות הלא סטטיות ידועות גם בתור מחלקות פנימיות.
שניים למרבב אחד
- מחלקה מקוננת לא סטטית (מחלקה פנימית)
- חבר בכיתה פנימית
- מעמד פנימי אנונימי
- מעמד פנימי מקומי
- מחלקה מקוננת סטטית
סוּג | תיאור |
---|---|
חבר בכיתה פנימית | מחלקה שנוצרה בתוך מחלקה ומחוץ לשיטה. |
כיתה פנימית אנונימית | מחלקה שנוצרה להטמעת ממשק או הרחבת מחלקה. מהדר Java מחליט את שמו. |
כיתה פנימית מקומית | נוצרה מחלקה בתוך השיטה. |
מחלקה מקוננת סטטית | נוצרה מחלקה סטטית בתוך המחלקה. |
ממשק מקונן | ממשק שנוצר בתוך מחלקה או ממשק. |