لنكن صادقين - عندما نواجه الكلمة الأساسية الثابتة لأول مرة، نفكر جميعًا: "ما نوع هذا السحر؟" ؟ ولكن لا تقلق، فأنا هنا لشرح الأمر بطريقة بسيطة وعميقة وربما ممتعة بعض الشيء!
تخيل أنك في حفلة؟. أنت وجميع أصدقائك يرتدون القبعات. ولكن هناك فقط قبعة واحدة يجب على الجميع مشاركتها. هذا هو ما تفعله الكلمة الأساسية الثابتة في Java! بدلاً من إنشاء قبعة لكل صديق (الأمر الذي يمكن أن يصبح فوضويًا)، لديك قبعة واحدة تنتمي إلى المجموعة — الفئة الفئة — ويمكنكم جميعًا أن تتناوبوا على ارتدائها.
الآن بعد أن وضعنا هذه الصورة في الاعتبار، فلنتعمق في ما تفعله البيانات الثابتة في Java.
بعبارات بسيطة، عندما تستخدم الكلمة الأساسية الثابتة في Java، فإنك تقول، "مرحبًا، هذا الشيء هنا ينتمي إلى الفئة نفسها، وليس إلى أي كائن محدد من تلك الفئة."
هذا يعنى:
المتغير الثابت يشبه تلك القبعة التي يتقاسمها الجميع. إذا قمت بتغيير القبعة (على سبيل المثال، ألصقت ريشة فيها)، سيرى الجميع التغيير.
class Party { static int numberOfGuests = 0; // static variable Party() { numberOfGuests ; // Increment the guest count every time someone joins the party } } public class Main { public static void main(String[] args) { Party guest1 = new Party(); Party guest2 = new Party(); Party guest3 = new Party(); System.out.println(Party.numberOfGuests); // Output: 3 ? } }
في المثال، يتشارك كافة الضيوف في المتغير numberOfGuests. لا يحصل كل ضيف جديد على عدد ضيوفه (تخيل الفوضى!). بدلاً من ذلك، يقوم الجميع بتحديث نفس العدد. الآن، بغض النظر عن عدد الضيوف الذين يصلون، هناك عدد واحد فقط من الضيوف، وينتمي إلى فئة الحفلة، وليس لأي ضيف فردي.
الطرق الثابتة تشبه رجال توصيل البيتزا في الحفلة - يمكنك الاتصال بهم وسيظهرون دون الحاجة إلى دعوة (كائن). بغض النظر عن عدد الحفلات التي تقيمها، نفس عامل البيتزا هو الذي يوصل البيتزا للجميع؟. ما عليك سوى الاتصال بمطعم البيتزا (الفصل)، وسيصلون!
class PizzaShop { static void deliverPizza() { System.out.println("Pizza delivered! ?"); } } public class Main { public static void main(String[] args) { PizzaShop.deliverPizza(); // No need to create a PizzaShop object } }
في المثال أعلاه، لم يكن عليك إنشاء كائن PizzaShop للحصول على البيتزا. لقد قمت باستدعاء الطريقة مباشرة من الفصل. لماذا تريد إنشاء متجر في كل مرة تشعر فيها بالجوع؟
قبل بدء الحفلة، يقوم منسق الموسيقى بفحص الصوت، أليس كذلك؟ هذا يشبه إلى حد ما كتلة ثابتة. يتم تشغيله مرة واحدة، قبل حدوث أي شيء آخر، للتأكد من أن كل شيء في مكانه.
class Party { static String music; // Static block to set up the DJ's playlist ? static { music = "Let's Dance by David Bowie"; System.out.println("Music is set up: " music); } } public class Main { public static void main(String[] args) { System.out.println("Party is starting with: " Party.music); } }
يتم تنفيذ الكتلة الثابتة قبل بدء أي حفلة. يتم إعداد الموسيقى مسبقًا، لذا عندما يصل الضيوف، يكونون في حالة من البهجة بالفعل؟.
الفئات المتداخلة الثابتة تشبه قسم VIP في الحفلة. إنهم داخل الحدث الرئيسي، لكنهم مستقلون، ولا تحتاج إلى إنشاء مجموعة للوصول إلى قسم VIP.
class Party { static class VIPArea { void exclusiveService() { System.out.println("Welcome to the VIP area! ?"); } } } public class Main { public static void main(String[] args) { Party.VIPArea vip = new Party.VIPArea(); // No need for a Party object vip.exclusiveService(); // Output: Welcome to the VIP area! ? } }
على الرغم من أن منطقة VIP هي جزء من الحفلة، فإنك لا تحتاج إلى حفلة كاملة لاستخدامها. إنها تقف بمفردها، وكأنها صالة رائعة وهادئة لكبار الشخصيات داخل حدث هائج.
الآن، ربما تفكر، "هذا رائع، ولكن متى يجب أن أستخدم البيانات الثابتة؟" حسنًا، إليك ورقة الغش:
حسنًا، حان وقت إلقاء نظرة خاطفة خلف الستار. وإليك كيف يحدث السحر:
يشبه إعداد طاولة للوجبات الخفيفة قبل وصول الضيوف. ليس عليك أن تطلب من كل ضيف إحضار طعامه الخاص - فهم فقط يساعدون أنفسهم في تناول الوجبات الخفيفة المشتركة؟.
مثل معظم الأشياء، يمكن أن يكون الكثير من الكهرباء الساكنة أمرًا سيئًا. إليك بعض التحذيرات:
الكلمة الأساسية الثابتة في Java تشبه DJ ورجل البيتزا وصالة VIP في إحدى الحفلات - فهي تجعل كل شيء أكثر سلاسة وكفاءة ومشتركًا بين جميع الضيوف. سواء كنت تتعامل مع طرق فائدة، أو بيانات مشتركة، أو تريد فقط حفظ الذاكرة، فالثبات هو صديقك.
لكن تذكر، لا تحول كل شيء إلى شيء ثابت مجاني للجميع! استخدمه بحكمة، وسيكون كودك نظيفًا وفعالًا وخاليًا من الفوضى؟.
هذا كل شيء! أنت الآن جاهز للتخلص من بعض المعرفة الثابتة مثل المحترفين؟.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3