כדי להבין כיצד מחלקות, משתנים ושיטות פועלות ב-Java, חיוני להבין את המושגים סטטי ולא-סטטי. חברים לא סטטיים מקושרים למופעי מחלקה ספציפיים, ואילו חברים סטטיים מחוברים למחלקה. בסעיף זה, נציג רכיבי Java סטטיים לעומת לא סטטיים, ומדגיש את ההבדלים ביניהם ויישומים פוטנציאליים.
קשור ל
סטָטִי: חברים סטטיים (משתנים ושיטות) משויכים למחלקה עצמה ולא למופעים בודדים.
לא סטטי: איברים לא סטטיים הם ספציפיים לכל מופע של מחלקה, מכיוון שהם קשורים לאובייקטים שנוצרו מהמחלקה.
mysql הצג את כל המשתמשים
הקצאת זיכרון
סטָטִי: לחברים סטטיים מוקצה זיכרון פעם אחת בלבד, בזמן טעינת הכיתה. הם משותפים בין כל המופעים של הכיתה.
לא סטטי: לחברים שאינם סטטיים יש זיכרון שהוקצה בנפרד עבור כל מופע של המחלקה. לכל אובייקט יש עותק משלו של איברים לא סטטיים.
גישה
סטָטִי: ניתן לגשת לחברים סטטיים ישירות באמצעות שם הכיתה ואחריו שם החבר (למשל, ClassName.memberName). הם נגישים מכל מקום בתוך התוכנית.
לא סטטי: גישה לאיברים לא סטטיים מתבצעת באמצעות הפניה לאובייקט ואחריו שם האיבר (למשל, objectReference.memberName). הם ספציפיים למופע מסוים של המחלקה.
רונאס בפאוורשל
אִתחוּל
סטָטִי: חברים סטטיים מאותחלים כאשר המחלקה נטענת לזיכרון, בדרך כלל במהלך הפעלת התוכנית. אתחול מתרחש פעם אחת בלבד.
לא סטטי: חברים לא סטטיים מאותחלים כאשר כל מופע של המחלקה נוצר, בדרך כלל באמצעות מילת המפתח החדשה. האתחול מתרחש בנפרד עבור כל אובייקט.
תְחוּם
סטָטִי: לחברים סטטיים יש היקף גלובלי וניתן לגשת אליהם מכל מקום בתוך התוכנית, אפילו מבלי ליצור מופע של המחלקה.
לא סטטי: לחברים שאינם סטטיים יש היקף מקומי וניתן לגשת אליהם רק דרך מופע של המחלקה. הם אינם נגישים ללא יצירת אובייקט.
גישה לחברים
סטָטִי: חברים סטטיים יכולים לגשת רק לחברים סטטיים אחרים באותה מחלקה. הם לא יכולים לגשת ישירות לחברים שאינם סטטיים.
לא סטטי: חברים לא סטטיים יכולים לגשת גם לחברים סטטיים וגם לא סטטיים בתוך אותה מחלקה. יש להם גישה ישירה לכל החברים.
נוֹהָג
סטָטִי: איברים סטטיים משמשים בדרך כלל עבור שיטות שירות, קבועים או משתנים שאינם ספציפיים למופעים בודדים. לדוגמה, כיתת מתמטיקה המכילה פונקציות מתמטיות.
css משנה גודל תמונה
לא סטטי: משתמשים באיברים לא סטטיים להתנהגות ספציפית למופע, מכיוון שהם מכילים נתונים ספציפיים לכל אובייקט. לדוגמה, משתני מופע המאחסנים ערכים ייחודיים עבור כל אובייקט.
יעילות זיכרון
סטָטִי: חברים סטטיים צורכים זיכרון פעם אחת בלבד, ללא קשר למספר המופעים שנוצרו. הם יכולים להיות יעילים בזיכרון כאשר יש לשתף את אותם נתונים בין כל האובייקטים.