logo

מדוע אנו משתמשים בכיתה סטטית ב-Java?

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

בחלק זה, נשתמש סטָטִי מילת מפתח עם ה שיעור Java וגם להבין למה אנחנו משתמשים במחלקה סטטית?

מחלקה סטטית של Java

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

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

מעמד פנימי

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

מעמד חיצוני

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

כיתה מקוננת

Java מאפשר לנו להגדיר מחלקה בתוך מחלקה המכונה a מחלקה מקוננת . זה יכול להיות סטטי או לא סטטי. ההבדל העיקרי בין מחלקה סטטית ללא סטטית הוא ש:

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

זכור

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

דוגמה לכיתה סטטית של Java

JavaStaticClassExample.java

 public class JavaStaticClassExample { private static String s= 'Javatpoint'; //Static and nested class static class StaticNestedClass { //non-static method of the nested class public void show() { //prints the string defined in base class System.out.println(s); } } public static void main(String args[]) { JavaStaticClassExample.StaticNestedClass obj = new JavaStaticClassExample.StaticNestedClass(); //invoking the method of the nested class obj.show(); } } 

תְפוּקָה:

 Javatpoint 

מדוע אנו משתמשים במחלקה סטטית ב-Java?

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